• 締切済み

Windows7でWMIのWin32_DiskDriveToDiskPartitionが使えない?

http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/may05/hey0523.mspx の記事を参考に、ローカルPCのドライブのパーティションを調べてドライブ文字を表示するプログラムで、Windows7(Beta)で動作するか確認したところ、動かなかったのでどこがおかしいのか調べたところWin32_DiskDriveToDiskPartitionが影響して、パーティションのリストが取得できてない様子なんです。 もともと、上の記事を参考にプログラムしたので、あまりWMIに詳しくないので、勘違いかもしれませんが、WMIに詳しい方がおられたら何かヒントでも教えていただけると助かります。

みんなの回答

noname#89375
noname#89375
回答No.1

Win7で回答しています。 次のscriptは私の環境で動作しています。 ドライブ キャプション、 デバイスID、 ドライブレター情報 が確認できています。 したがって、Win32_DiskDriveToDiskPartitionは機能していると思います。 -------------------------- ComputerName = "." Set wmiServices = GetObject ( _ "winmgmts:{impersonationLevel=Impersonate}!//" _ & ComputerName) ' Get physical disk drive Set wmiDiskDrives = wmiServices.ExecQuery ( _ "SELECT Caption, DeviceID FROM Win32_DiskDrive") For Each wmiDiskDrive In wmiDiskDrives WScript.Echo "ドライブ キャプション: " _ & wmiDiskDrive.Caption _ & VbNewLine & "デバイスID: " _ & " (" & wmiDiskDrive.DeviceID & ")" 'Use the disk drive device id to ' find associated partition query = "ASSOCIATORS OF {Win32_DiskDrive.DeviceID='" _ & wmiDiskDrive.DeviceID & "'} WHERE AssocClass = Win32_DiskDriveToDiskPartition" Set wmiDiskPartitions = wmiServices.ExecQuery(query) For Each wmiDiskPartition In wmiDiskPartitions 'Use partition device id to find logical disk Set wmiLogicalDisks = wmiServices.ExecQuery _ ("ASSOCIATORS OF {Win32_DiskPartition.DeviceID='" _ & wmiDiskPartition.DeviceID & "'} WHERE AssocClass = Win32_LogicalDiskToPartition") For Each wmiLogicalDisk In wmiLogicalDisks WScript.Echo "Drive letter associated" _ & " with disk drive = " _ & wmiDiskDrive.Caption _ & wmiDiskDrive.DeviceID _ & VbNewLine & " Partition = " _ & wmiDiskPartition.DeviceID _ & VbNewLine & " is " _ & wmiLogicalDisk.DeviceID Next Next Next

yukinohi
質問者

補足

回答のお礼が遅くなり申し訳ありません。 回答ありがとうございました。 書いていただいたスクリプトを実行させていただきましたところ、ドライブ文字は確かに表示されましたのでWin32_DiskDriveToDiskPartitionは問題ないようです。 ただ、ドライブ文字が表示されることを確認したのと同じWin7のパソコンで、 http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/may05/hey0523.mspx のにあるスクリプトでWinXPではドライブ文字が表示されますのにWin7でドライブ文字が表示されない原因がわかりません。 不勉強で申し訳ないですが、もし原因がわかる方がおられましたらご教授お願い致します。

関連するQ&A

専門家に質問してみよう