我的磁盤上有一個單獨的分區,格式化爲FAT32。當我休眠Windows時,我希望能夠加載另一個操作系統,創建/修改該分區上的文件,然後使Windows退出休眠狀態,並能夠看到我所做的更改。強制Windows刷新磁盤FAT
我知道你打算打字,「呃,你不應該這樣做!」然後將我鏈接到一些關於我試圖做的事情是錯誤/不可能/打破一切的規範。不過,我確信有一些方法可以解決這個問題。 :)
我不需要在Windows中的FAT32分區,除了讀取寫在那裏的文件,然後我完成了 - 所以無論解決方案是什麼,這是可以接受的完全無法訪問的磁盤一段的時間。遺憾的是,我無法將整個物理磁盤都置於脫機狀態,因爲它只是安裝了Windows的同一物理設備的一個分區 - 只是分區。
這是到目前爲止我試過的東西...
- 谷歌它。我至少得到了一個「這永遠不會發生」的答案。不能的! :)
- 冬眠之前卸載磁盤。冬眠後出山。這似乎沒有效果。 Windows仍然認爲FAT與以前相同,所以無論我寫入磁盤的數據是否丟失,我調整的任何文件都已損壞。如果任何文件被緩存,則更糟糕。
- 使用DeviceIoControl調用IOCTL_DISK_UPDATE_PROPERTIES來嘗試刷新磁盤(但分區表沒有改變,所以這並沒有真正做任何事情)。
有什麼辦法來使磁盤/卷讀緩存無效,強制窗口回到磁盤?
我想過直接使用libfat打開分區和讀/寫,並繞過緩存或什麼東西是矯枉過正。
對不起,在鍵入它屬於的地方之前,將上述內容意外地輸入爲「答案」。請忽略這個「答案」。 – 2008-10-28 00:00:38