我需要清除扇區0的可移動媒體設備(自定義USB存儲設備),我一直試圖在WPF/C#應用程序中清除。我第一次嘗試使用DD,但我遇到了問題。在製造所述設備的MBR在扇區0創建並在扇區40的體積(邏輯?)開始當我發出以下命令它清除扇區40,而不是扇區0:
dd bs=512 count=1 if=/dev/zero of=\.\E:
我發現包含擦除實用程序的DD here的另一個版本。我試過這個版本,我看到了相同的行爲。我正在使用HxD和Runtime的DiskExplorer,扇區40正在被清除,而不是扇區0.我可以使用HxD或Runtime的DiskExplorer,但是這需要腳本化。
有誰知道在Windows XP SP2中清除(填充)扇區0的其他方法?任何幫助將不勝感激。謝謝。清除扇區零的可移動媒體設備
馬克
解決方案:使用WMI我的解決方案,以找到基於邏輯驅動器號的物理驅動器。首先,查詢Win32_LogicalDiskToPartition類以查找我正在查找的邏輯驅動器。這提供了前綴字段,它們強制類似'... DeviceID =「磁盤#X,分區#Y」'。接下來,我查詢Win32_DiskDriveToDiskPartition類,同時搜索Dependent字段以查找Win32_LogicalDiskToPartition類中的Antecedent字段的匹配項。一旦找到,Win32_LogicalDiskToPartition的Antecedent字段將產生物理驅動器。我選擇了atzz,因爲它接近我的解決方案。我想使用尤金的建議,但我只有幾個小時來實現這一點,所以我選擇了更容易的兩個。不過,我需要在稍後時間重新訪問。
BTW,感謝DD的提及。我不知道Windows端口存在。這很少需要,但有時候非常有用。現在我不必爲dd引導linux。 – atzz 2010-09-24 12:32:12