3

現在、これらの機能を実行するためにDiskpartを使用していますが、P-Invokeを使用できるようにし、C#アプリで外部プロセスにシェルアウトする必要がないようにしたいと考えています。

Diskpartスクリプトの例は次のとおりです。

//Online a disk
Select disk 7
disk online

// Reset GPT Identifier
select disk 7
UNIQUEID DISK ID=baf784e7-6bbd-4cfb-aaac-e86c96e166ee

pinvoke.netを検索してみましたが、ディスクではなく、ボリュームを処理する関数しか見つかりませんでした。Pinvokeを使用してこれらのdiskpartコマンドを実行する方法について何かアイデアはありますか?

4

2 に答える 2

0

Dispart が何をするのか正確にはわかりませんが、この種の機能を持つ可能性のある WMI を調べることをお勧めします。通常、Windows であまり一般的ではないことを行う必要がある場合は、このページを参照するのに適しています。

Storage WMI Classes何か役に立つかもしれないものがあります:
http://msdn.microsoft.com/en-us/library/ff567016%28VS.85%29.aspx

編集:あなたがそれに興味がないことを見逃していたので、ボリュームに関する提案を削除しました。

于 2010-05-25T15:19:57.387 に答える
0

DeviceIOControl APIはどうですか?

そうでない場合は、WMI の使用を検討します。特に、WMI のWIN32_DiskDriveまたはWIN32_LogicalDiskクラスに注目してください。

于 2010-05-25T15:39:55.233 に答える