找回密码
 加入
搜索
查看: 2098|回复: 1

[AU3基础] 关于$hMachine参数的迷惑

[复制链接]
发表于 2011-2-6 22:47:35 | 显示全部楼层 |阅读模式
我想得到某个设备的所有硬件ID,比如说显示器,网卡,鼠标,等等。
仔细查看了SetupApi.au3里面的函数,发现这个函数能够实现这个功能
_CM_Get_Device_ID_List_Ex($hMachine, $sFilter = "", $iFlags = $CM_GETIDLIST_FILTER_NONE)
虽然我现在成功使用这个函数了,但是我一直没有弄明白$hMachine这个参数是什么,怎么得到,
根据注释$hMachine        - Supplies a machine handle that is returned by _CM_Connect_Machine function.
也就是说这个参数需要使用_CM_Connect_Machine函数得到,我又看了_CM_Connect_Machine
这个函数,_CM_Connect_Machine($sUncSystem),关于这个函数的参数描述:$sUncSystem        - System name, in UNC format.,意思应该是系统名字的UNC格式字符串吧,可是这个System name我怎么知道呢?从哪里得到呢?我知道WINDOWS里面只有computer name(计算机名),这个System name(系统名)不知道是什么,希望版主解答。
还有我测试过,不管我$hMachine这个参数是空(""),或者是_CM_Connect_Machine("XP系统计算机"),反正是随便我怎么设置,最后都不会出错,都会正常返回。不知道是怎么回事。
发表于 2011-2-6 23:12:39 | 显示全部楼层
System name 就是Computer name,两种叫法,都一样。指定UNC格式的计算机名称时,要在Computer name 前面加上“\\”, 比如_CM_Connect_Machine("\\XP系统计算机")。
不管如何设置,函数都会成功是因为你指定了错误格式的计算机名,使得_CM_Connect_Machine返回了0,而$hMachine参数如果为0,表示在本机的配置管理器(Configuration Manager - CM)中操作硬件。在使用$hMachine参数前,最好先检查一下它的值。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-21 12:30 , Processed in 0.073492 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表