我需要修改Windows的MBR,我真的很想從Windows執行此操作。修改Windows的MBR
這是我的問題。我知道我可以通過調用CreateFile來處理物理設備。 MBR總是在\\。PHYSICALDRIVE0?另外,我還在學習Windows API以直接從磁盤讀取。 readabsolutesectors和writeabsolutesectdors是我需要用來讀/寫包含MBR的磁盤扇區的兩個函數嗎?
從我自己學到的東西中編輯。 MBR不會總是在\\。\ PHYSICALDRIVE0上。另外,可以通過調用CreateFile和包含MBR的驅動器的設備名稱來寫入引導扇區(至少以XP管理員身份)。另外,只需調用WriteFile並傳遞通過調用CreateFile創建的設備的句柄即可寫入該驅動器。
編輯地址Joel Coehoorn。 我需要編輯MBR,因爲我正在開發一個項目,需要在BIOS中POST後修改硬件寄存器,但在Windows允許啓動之前。我們的計劃是通過修改引導加載程序在Windows引導之前執行我們的代碼來進行這些更改。
編輯Cd-MaN。 感謝您的信息。但是,答案中沒有任何內容,我不知道,你的回答也不能解決我的問題。由於多種原因,註冊管理機構絕對不會做我們需要的。最重要的原因是Windows是我們的產品中運行的多個軟件層中的最高層。這些更改需要在較低級別運行之前發生,因此註冊表將無法工作。
P.S.爲Cd-MaN。根據我的理解,您提供的信息不完全正確。對於Vista,如果正在寫入的扇區是引導扇區,我認爲您可以寫入卷。請參閱http://support.microsoft.com/kb/942448
每個啓動程序代碼程序員都應該知道可能的問題列表。謝謝! – 2013-04-06 08:26:28