1

特定のパーティションを保持している物理ディスクをプログラムで見つける方法を知っている人はいますか? 手動で、 Start->Run->diskmgmt.msc を使用してこの情報を見つけることができます。ここで、(私のコンピューターで) パーティション C: と D: がディスク 1 にあり、E: と F: がディスク 0 にあることがわかります。

これは、ファイルが異なる物理ディスク上にある場合に、一部のファイル クランチ操作を並行して実行することで最適化するためです。

4

4 に答える 4

3

Win32_DiskDriveクラスを照会することにより、System.Management 名前空間から WMI を使用してこの情報を取得できます。

ここでは、.NET の WMI に関する基本情報を示します。

于 2008-11-18T21:06:25.227 に答える
1

HKEY_LOCAL_MACHINE \ SYSTEM\MountedDevicesを参照してください

wmic path CIM_BasedOn get * > wmic-path-CIM_BasedOn-get.txt
wmic path CIM_DiskPartition get * > wmic-path-CIM_DiskPartition-get.txt
wmic path CIM_StorageExtent get * > wmic-path-CIM_StorageExtent-get.txt

クラスを参照してください:CIM_BasedOn-非列挙型の非表示パーティション、CIM_DiskPartition -all、ただしディスクラベルは表示されません、CIM_StorageExtent-GUID、ラベル、パーティション(非表示も)

于 2013-01-01T18:22:36.160 に答える
1

Arulの回答に加えて、VBSスクリプトからWMIを使用してディスク<->パーティションの関連付けを取得する方法を示すリンクがあります:WMIタスク:ディスクとファイルシステム ->ページの最後の例を参照してください。

編集:さらに良いことに、 C#を使用したWMIに関する優れた記事\\\\.\\PHYSICALDRIVE0があります。これは、論理ディスク(eg)を保持するC:ディスクドライブ(eg)を取得するために必要なWMIクラス間の正確な関係についても説明しています。

于 2008-11-18T21:46:05.957 に答える
0

パーティションが 1 つのディスクのみに関連付けられていますか? 複数の物理ディスクにまたがってストライプ化/スパン化/などすることができます。

于 2008-11-18T21:20:25.133 に答える