多个硬盘应该也能搞定,你测试下~Local $iPid = Run('wmic DISKDRIVE get Caption', '', 0, 2), $Stdout
While 1
Sleep(1)
$Stdout &= StdoutRead($iPid)
If @error Then ExitLoop
WEnd
$sR = StringRegExp($Stdout, '\n(.+?)\s+\r', 3)
#include <Array.au3>
_ArrayDisplay($sR, '') #Include <WinAPIEx.au3>
_Winapi_GetDiskSerialNumber( $sDrive )
不知道楼主要的是不是这个 DriveGetLabel("盘符") 回复lsq726
多个硬盘应该也能搞定,你测试下~
afan 发表于 2010-3-27 19:34 http://www.autoitx.com/images/common/back.gif
是的,测试可以多硬盘。。
好多种方法呢。太感谢了。:face (29): 楼主就一伸手,代码都出来了,不能自己分析下.... 也要以调用dll传参:face (14): 真的很不错的帖子
好好的学习 学习中高手都来了正需要 回复lsq726
多个硬盘应该也能搞定,你测试下~
afan 发表于 2010-3-27 19:34 http://www.autoitx.com/images/common/back.gif
有感于afan的贴使用了WMI里的功能并删除了不想要的信息。。
只是知其所以,而不知其所以然。。; 生成于 AutoIt Scriptomatic
__wmi_Win32_DiskDrive()
Func __wmi_Win32_DiskDrive()
Local $wbemFlagReturnImmediately = 0x10
Local $wbemFlagForwardOnly = 0x20
Local $colItems = ""
Local $strComputer = "localhost"
Local $Output=""
;~ $Output &= "Computer: " & $strComputer& @CRLF
;~ $Output &= "==========================================" & @CRLF
Local $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_DiskDrive", "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) then
For $objItem In $colItems
$Output &= $objItem.Caption & @CRLF
if Msgbox(1,"WMI Output",$Output) = 2 then ExitLoop
$Output=""
Next
Else
Msgbox(0,"WMI 输出","没有在类 " & "Win32_DiskDrive" & "中找到WMI对象" )
Endif
EndFunc
Func WMIDateStringToDate($dtmDate)
Return (StringMid($dtmDate, 5, 2) & "/" & _
StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _
& " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate,13, 2))
EndFunc :face (36):我仅仅想说:安装目录就有这例子,就是没人看,杯具!白写了! 我仅仅想说:安装目录就有这例子,就是没人看,杯具!白写了!
kodin 发表于 2010-4-1 09:21 http://autoitx.com/images/common/back.gif
名字是什么,,?这样还是不知道该看哪个。 很好的学习例子...
页:
1
[2]