zbezj 发表于 2019-9-17 22:49:57

错误“variable must be of type Object”,求大神

Global $WMICService = ObjGet("winmgmts:\\.\root\cimv2")
For $item In $WMICService.ExecQuery("SELECT BuildNumber FROM Win32_OperatingSystem")
      $BuildNumber = $item.BuildNumber
Next

编译正常,但是在有些电脑上执行的时候,提示错误“variable must be of type Object”,请问各位大佬是什么原因?

nmgwddj 发表于 2019-9-18 19:57:11

WMI 是不可靠的,尽量通过 Windows API 获取,有些系统 WMI 服务都被精简或者禁用掉了。

zbezj 发表于 2019-9-18 23:05:14

nmgwddj 发表于 2019-9-18 19:57
WMI 是不可靠的,尽量通过 Windows API 获取,有些系统 WMI 服务都被精简或者禁用掉了。

不太会用 Windows API ,上面这三行代码,能等价的写一下代码么?多谢大神

nmgwddj 发表于 2019-9-19 09:28:56

zbezj 发表于 2019-9-18 23:05
不太会用 Windows API ,上面这三行代码,能等价的写一下代码么?多谢大神

https://www.autoitscript.com/forum/topic/113949-kernel32dll-getproductinfo/?hl=%252Bosversioninfoex#entry797015
多搜索论坛,用不同的关键字,想想别人遇到这个问题会怎么提问,用这些关键字去搜索。
自己遇到问题的时候也要想着其他人,要如何构建一个适于搜索的标题。

haijie1223 发表于 2019-9-19 22:35:24

nmgwddj 发表于 2019-9-19 09:28
https://www.autoitscript.com/forum/topic/113949-kernel32dll-getproductinfo/?hl=%252Bosversioninfoe ...

真的,学会搜索问题是一门技能。

zbezj 发表于 2019-9-21 15:30:25

nmgwddj 发表于 2019-9-19 09:28
https://www.autoitscript.com/forum/topic/113949-kernel32dll-getproductinfo/?hl=%252Bosversioninfoe ...

谢谢啦:face (33):
页: [1]
查看完整版本: 错误“variable must be of type Object”,求大神