MBR修改

Posted 天还是那么蓝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MBR修改相关的知识,希望对你有一定的参考价值。

#include <windows.h>
typedef struct _PT
{
    char 活动标志;
    char 起始磁头号;
    char 起始扇区号;
    char 起始柱面号;
    char 分区格式标志;
    char 结束磁头号;
    char 结束扇区号;
    char 结束柱面号;
    long 分区之前所用扇区;
    long 本分区扇区数;
}PT,*PPT;
typedef struct _INFO{
    char Code[512 - (16*4+2)];
    PT    pt[4];
}INFO,*PINFO;


int _tmain(int argc, _TCHAR* argv[])
{
    HANDLE hFile = CreateFile(L"\\\\.\\PhysicalDrive0", GENERIC_READ, FILE_SHARE_READ
        , NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    char buf[512] = {};
    DWORD dwFile = 0;
    ReadFile(hFile, buf, 512, &dwFile, NULL);
    PINFO pMbr = PINFO(buf);
    printf("%u\n", pMbr->pt[0].活动标志);
    printf("%d\n", pMbr->pt[1].活动标志);
    return 0;
}
调成1字节对齐

 

以上是关于MBR修改的主要内容,如果未能解决你的问题,请参考以下文章

自己动手写一个操作系统——MBR

自己动手写一个操作系统——MBR

修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段

vscode中设置vue代码片段

iOS代码片段CodeSnippets

MBR扇区故障及修复