2011-09-29 53 views
3

有沒有一種方法可以僅使用Win32調用來有目的地損壞FAT文件系統,還是必須在較低級別上執行該操作?我們遇到了WinCE 5.0設備上的FAT損壞,並編寫了一個實用程序來檢測並嘗試更正它,但沒有辦法根據需要創建FAT損壞。謝謝。有意破壞FAT文件系統?

媒體是一個CF卡,但它不能像普通課程那樣拆卸,因爲它安裝在設備的內部。

+0

WinCE設備是否使用某種可移動存儲? –

+1

我希望你不能使用API​​。這將是一個錯誤。我相信你必須看看使用較低級別的指令。如果您可以在寫入過程中關閉電源或「彈出」驅動器,以免損壞它。 –

回答

2

什麼是對FAT(例如插入USB接口,板載閃存等)一些提示?這將會產生很大的差異。

如果是板載閃存,則需要在文件系統驅動程序(FSD)的下面,這通常是閃存驅動程序本身。它可以通過Xxx_Write或Xxx_Ioctl訪問原始閃存扇區(這是FSD用於讀取和寫入的)。它的工作原理取決於正在使用的閃存驅動器,因此,查看驅動程序源是最佳途徑。

2

您可以將設備數據作爲原始文件訪問,並在該文件中寫入隨機數據以破壞FAT。例如。如果你寫的隨機數據:

\ \設備\ HarddiskVolume1

這會破壞第一個分區。

這頁有關於如何找出路徑,HDD/USB驅動器等

http://www.chrysocome.net/dd

+0

這是令人放心的.. –

+0

@亞當,這就是爲什麼沒有人應該登錄爲管理員日常工作的原因之一。通用文件API爲管理員用戶提供原始數據訪問。 –

+5

@Shamit:以管理員身份登錄? Windows CE沒有登錄或用戶身份驗證,因此不存在「管理員用戶」 – ctacke