프로그래밍

 3198, 1/160 회원가입  로그인  
   kmc8724
   물리디스크 접근하는 코드 작성중인데요..

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=6380 [복사]


#include <windows.h>
#include <stdio.h>

int APIENTRY WinMain(HINSTANCE hlnst, HINSTANCE hPrev, LPSTR lpCmd, int nCmdShow)
{
        HANDLE hFile = INVALID_HANDLE_VALUE;
        DWORD dwRead;

        hFile = CreateFile("\\\\.\\PhysicalDrive0", GENERIC_ALL, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

        WriteFile(hFile, "00", 2, &dwRead, NULL);

        CloseHandle(hFile);

        return 0;
}


MBR을 조작하는 코드를 만들어보고있습니다.
근데 위 코드를 실행하고 HxD(헥사에디터)로 봐도 변화가 없네요..

어디가 잘못된걸까요?;; 도와주세요..

  Hit : 5383     Date : 2013/08/28 10:58



    
jwkzzangs 아마도 WriteFile이 실패날 것으로 예상됩니다.

물리메모리(MBR)은 Read, Write 하실때 512Byte 단위로 하셔야 할겁니다.

Write 하실때 2Byte만 하셨네용 ㅎㅎ
2013/08/29  
kjwon15 관리자 권한으로 실행해야 MBR이 변조가 됩니다. 2013/08/30