具體實現方法如下:
#include 是為了使用cfiledialog
main.h如下:
複製** **如下:
#include
class cmyapp:public cwinapp
;main.cpp如下:
複製** **如下:
#include "main.h"
#include 程式設計客棧》
cmyapp theapp;
bool cmyapp::initinstance()
//開啟檔案
handle hfile = ::createfile(dlg.getpathname(), generic_read, file_share_read, null, open_existing, file_attribute_normal, null);
if (invalid_handle_value == hfile)
image_dos_header dosheader;
image_nt_headers32 ntheader;
dword dwreturn;
bool bispe=false;
::readfile(hfile, &dosheader, sizeof(image_dos_header), &dwreturn, null);
if (dwreturn == sizeof(image_dos_heyexupqcader))
} }
} }
::closehandle(hfile); //與上面的createfile區對寫
if (bispe)
else
return false;
本文標題: c++判斷pe檔案例項
本文位址:
判斷是不是PE檔案
include include assert.h include include tchar.h ifdef unicode define ispefile ispefilew define isdigisig isdigisigw else define ispefile ispefilea de...
PE檔案的有效性判斷
pe 檔案格式被組織為乙個線性的資料流。開始的是 ms dos 頭,然後是實模式的程式根,再就是 pe檔案簽名,緊隨其後的便是 pe檔案頭和可選頭。在這之後,出現的是所有的節頭,再跟著的就是所有節的節身。檔案常以一些其它方面的雜項資訊,包括重定位資訊 符號表資訊 行數資訊以及字串表資料等作為結尾。所...
PE檔案詳解之PE檔案頭
1,pe檔案頭 pe header 緊挨著 dos stub 2,pe header 是pe相關結構nt映像頭 image nt header 的簡稱。裡面包含著許多pe裝載器用到的重要字段。3,執行體在支援pe檔案結構的作業系統中執行時,pe裝載器將從 image dos header 結構中的 ...