其實讀寫硬碟引導區和是不是c#沒有關係,只要能用windows api的語言都可以。
原理就是用createfile這個api,獲得物理硬碟的handle,然後用filestream讀取就可以了,filestream有幾個建構函式是以控制代碼方式初始化的。
\\.\physicaldrive0 就是第乙個物理硬碟了,其他的就是1、2、3……
[csharp]view plain
copy
using system;
using system.io;
using system.runtime.interopservices;
namespace test
for (int i = 0; i
console.read();
} }
} 當然不只是可以讀取引導區,整個硬碟都可以啊。
另外,既然獲得了硬碟的filestream了,那麼就不止可以read了,當然也可以write了,不過fileaccess什麼的就得改改了。
乾脆把改寫的也貼上吧,我在虛擬機器裡實驗的,執行後就這樣了,沒敢在真機試,有興趣的同學可以在真機執行一下以下**。
[csharp]view plain
copy
using system;
using system.io;
using system.runtime.interopservices;
namespace test
disk.seek(0, seekorigin.begin);
try
catch (exception e)
} } }
c 直接讀寫物理硬碟引導區
其實讀寫硬碟引導區和是不是c 沒有關係,只要能用windows api的語言都可以。原理就是用createfile這個api,獲得物理硬碟的handle,然後用filestream讀取就可以了,filestream有幾個建構函式是以控制代碼方式初始化的。physicaldrive0 就是第乙個物理硬...
VirtualBox直接使用物理硬碟作虛擬機器磁碟
virtualbox,只能用命令列來 建立磁碟才可以使用物理硬碟。1.執行cmd,cd進入你的virtualbox目錄,如 cd c program files sun virtualbox 如果是windows 7以上要用管理員許可權執行cmd 2.命令列執行vboxmanage.exe,如 vb...
通過檔案的方式對硬碟扇區進行直接讀寫操作
createfile physicaldrive0 generic read,file share write,0,open existing,0,0 功能 讓物理磁碟0以檔案,唯讀,共享寫的方式開啟,開啟後會返回乙個檔案控制代碼,其實就是物理磁碟的控制代碼。readfile hdev,buffer...