此函数为何在有的电脑上得不到操作系统版本?
我台式机系统是WINDOWS 7旗舰版,索尼笔记本上同样是WINDOWS 7旗舰版,但是在笔记本上却不能返回操作系统版本,在台式机上则没有问题。这是为何?Func _GetOSVersion()
Local $Version
$objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
$colOS = $objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For $objOperatingSystem In $colOS
$Version = StringMid($objOperatingSystem.Caption, 11)
Next
Return $Version
EndFunc ;==>_GetOSVersion
明明有自带函数,你这么麻烦干嘛 @osarc 本帖最后由 smooth 于 2015-3-13 10:51 编辑
明明有自带函数,你这么麻烦干嘛 @osarc
user11 发表于 2015-3-13 09:32 http://www.autoitx.com/images/common/back.gif
你确定有这个函数吗?我没测试出来。我上面那个函数,可以得到“WINDOWS 7旗舰版”这样的返回值。
@OSVersion = WIN_7
@OSArch = X86
@OSBuild = 7601
@OSLang = 0804
@OSServicePack = Service Pack 1
@OSType = WIN32_NT
没有一个自带的函数能得到类似“旗舰版”这样的返回值,我那个函数可以得到。 你一楼贴的_GetOSVersion()受制于系统服务:Windows Management Instrumentation(winmgmt),有些优化精简会停用或禁用该系统服务. 回复 4# boyhong
经过查看,检测不到“Windows 7 旗舰版”信息的笔记本,你说的该服务是启动的。 旗舰版的消息是出不来的,这几个宏只能返回版本信息,和产品信息不是一码事 用gertproductinfo api试试 旗舰版的消息是出不来的,这几个宏只能返回版本信息,和产品信息不是一码事
netegg 发表于 2015-3-22 16:41 http://www.autoitx.com/images/common/back.gif
谢谢楼主,测试生效 ,代码收下了,谢谢谢谢,学习了
回复 8# Huiseyu
为何不调出 Beta 的运行, 检查, 帮助, 工具.......... 回复Huiseyu
为何不调出 Beta 的运行, 检查, 帮助, 工具..........
131738 发表于 2015-4-3 10:29 http://www.autoitx.com/images/common/back.gif
没懂什么意思?是不是回复错了 回复 9# 131738
一定是说新版本了,是这样,是前几天在公司电脑测试的。等放假了把自己的电脑换成beta版的。
现在在论坛学习了,懒的搞。 全用wmi虽说个别情况下确实好用,但始终是受限于wmi服务的,若非必须或用户可控,还是不用的好。 回复 1# smooth
楼主,你的代码测试可用。我的同样Windows 7旗舰版。本人API不会用。 我的系统 Windows 10 Enterprise LTSC 2021wmi服务启动状态 台式机 不返回结果
页:
[1]