freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

使用vc自己動(dòng)手編寫加殼程序-文庫吧資料

2025-07-13 12:45本頁面
  

【正文】 ………………………最后還要將寫入函數(shù)的指針設(shè)置為內(nèi)存分配的句柄,代碼如下:CloseHandle(hFile)。CloseHandle(hMapping)。UnmapViewOfFile(lpHeadBase)?!?/獲取文件大小MessageBox(文件加載到內(nèi)存失??!,錯(cuò)誤提示!,MB_OK)。if (!MemAlloc(hFile))////////////////////////////////////////////////////////////////////////////////////第四次內(nèi)容。MessageBox(文件不是PE可執(zhí)行文件,錯(cuò)誤提示!,MB_OK)。if (!IsPE(hFile))/////////////////第三次加的內(nèi)容/////////////////////////////////////////////}最后在主函數(shù)OnButtonPacking中調(diào)用分配函數(shù),及釋放函數(shù)。//釋放分配的虛擬內(nèi)存}第二個(gè)函數(shù),MemAllocFree主要是釋放分配的內(nèi)存。i++)ReadFile(hFile,(LPVOID)((DWORD)lpVirtualtAlloc+(pSectionHeader+i)VirtualAddress),(pSectionHeader+i)SizeOfRawData,amp。SetFilePointer(hFile,(pSectionHeader+i)PointerToRawData,NULL,FILE_BEGIN)。//將指針設(shè)定到每個(gè)區(qū)塊的開始{idwnumofsections。//然后分區(qū)塊進(jìn)行讀入pSectionHeader=IMAGE_FIRST_SECTION(pNtHeader)。pOptionalHeader=(PIMAGE_OPTIONAL_HEADER)(amp。pNtHeader=(PIMAGE_NT_HEADERS)(pDosHeadere_lfanew+(DWORD)pDosHeader)。pDosHeader=(PIMAGE_DOS_HEADER)lpVirtualtAlloc。ReadFile(hFile,lpVirtualtAlloc,dwSizeOfHeaders,amp。SetFilePointer(hFile,0,NULL,FILE_BEGIN)。//將文件讀入到內(nèi)存中if (lpVirtualtAlloc==NULL)//MEM_COMMIT表示提交分配//分配虛擬內(nèi)存(szBuffer)。dwOffset,dwSizeOfHeaders,dwSizeOfImage)。sprintf(szBuffer,文件頭:%lx,文件頭大?。?lx,文件映像大?。?lx\r\n,dwBufferRead,NULL)。ReadFile(hFile,amp。SetFilePointer(hFile,dwOffset+0x54,NULL,FILE_BEGIN)。dwBufferRead,NULL)。ReadFile(hFile,amp。SetFilePointer(hFile,dwOffset+0x50,NULL,FILE_BEGIN)。dwOffset,4,amp。DWORDDWORDchardwOffset。//文件實(shí)際讀入大小dwBufferRead。//文件頭大小dwSizeOfHeaders。//映像大小dwSizeOfImage。//文件分配虛擬內(nèi)存BOOL CPEPackerDlg::MemAlloc(HANDLE hFile){編寫代碼。設(shè)置方法。所以為了省去這種麻煩,我們干脆設(shè)置為只讀算了。//區(qū)塊表指針此時(shí)我們把兩個(gè)編輯框的屬性設(shè)置為只讀。//可選頭指針 pOptionalHeader。PIMAGE_OPTIONAL_HEADER //DOS頭指針 pDosHeader。PIMAGE_DOS_HEADERlpVirtualtAlloc。變量類型和名稱如下,Access都選擇public。//分配內(nèi)存函數(shù)類型和說明分別如下:最后的效果圖。載入內(nèi)存用先通過VirtualAlloc函數(shù)分配虛擬內(nèi)存空間,然后通過ReadFile讀入到內(nèi)存。本次內(nèi)容將使用第三種方式加載文件到內(nèi)存。第二是獲取獲取文件大小,然后分配相應(yīng)大小的內(nèi)存。將PE文件載入內(nèi)存后再操作有三種方法。m_FilePathNamePacked=(()4)+。//如果要嚴(yán)格做,需要獲取文件路徑,擴(kuò)展名等等。//設(shè)定加殼后的文件名,我采取了一個(gè)偷懶的簡(jiǎn)單方法。dwFileSize=GetFileSize(hFile,NULL)。}//////////////////////////////////////////////////////////////////////////return。(錯(cuò)誤提示:文件不是PE格式!\r\n)。{//判斷文件格式MessageBox(打開文件失敗!,錯(cuò)誤提示,MB_OK)。{如果文件格式正確,就創(chuàng)建映射;否則,就返回。}最后在OnButtonPacking函數(shù)中,運(yùn)用此函數(shù)。}return FALSE。{if (wTemp amp。dwBufferRead,NULL)。ReadFile(hFile,amp。SetFilePointer(hFile,dwOffset+0x16,NULL,FILE_BEGIN)。//獲取文件特征,判斷是exe還是dll文件。if (!dwOEP)//如果OEP為0。dwBufferRead,NULL)。ReadFile(hFile,amp。SetFilePointer(hFile,dwOffset+0x28,NULL,FILE_BEGIN)。}return FALSE。{EP39。wTemp,2,amp。//讀取PE頭信息dwBufferRead,NULL)。ReadFile(hFile,amp。SetFilePointer(hFile,0x3C,NULL,FILE_BEGIN)。}return FALSE。{ZM39。wTemp,2,amp。//讀取MZ標(biāo)志dwOEP。//PE頭偏移位置dwOffset。//實(shí)際讀取的字節(jié)數(shù)dwBufferRead。//暫存讀取的字節(jié)wTemp。//檢測(cè)文件是否是PE可執(zhí)行文件格式BOOL CPEPackerDlg::IsPE(HANDLE hFile){在classview視圖中,找到CPEPackerDlg類,在其上面點(diǎn)擊右鍵,選擇“Add member Function...”首先添加一個(gè)成員函數(shù):IsPe,用來判斷文件格式。本系統(tǒng)現(xiàn)在暫時(shí)只處理EXE可執(zhí)行文件。(3)檢測(cè)文件格式主要內(nèi)容:檢測(cè)文件格式(是否為PE格式的EXE文件)本次的主要內(nèi)容為檢測(cè)文件是否為PE格式,且是否為EXE文件。的后面添加:在OnButtonOpenfile() 函數(shù)中,在代碼}(文件加殼完成!\r\n)。//卸載文件映射,關(guān)閉文件句柄CloseHandle(hFile)。UnmapViewOfFile(lpHeadBase)。//卸載文件映射,關(guān)閉文件句柄dwBufferRead,NULL))//寫入文件if (hFile==INVALID_HANDLE_VALUE)NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL)。hFile=CreateFile(m_FilePathNamePacked,GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,}return。//關(guān)閉文件句柄MessageBox(文件映射地址失??!,錯(cuò)誤提示,MB_OK)。{//將文件映射對(duì)象映射到當(dāng)前應(yīng)用程序的地址空間中MessageBox(創(chuàng)建文件映射失敗!,錯(cuò)誤提示,MB_OK)。{//創(chuàng)建文件映射。m_FilePathNamePacked=(()4)+。//如果要嚴(yán)格做,需要獲取文件路徑,擴(kuò)展名等等。//設(shè)定加殼后的文件名,我采取了一個(gè)偷懶的簡(jiǎn)單方法。dwFileSize=GetFileSize(hFile,NULL)。}return。if (hFile==INVALID_HANDLE_VALUE)//如果文件打開失敗,就彈出對(duì)話框,并返回。OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL)。hFile=CreateFile(m_FilePathName,GENERIC_READ,FILE_SHARE_READ,NULL,//實(shí)際讀取字節(jié)dwBufferRead。//文件大小dwFileSize。//創(chuàng)建映射的頭指針lpHeadBase。//文件映射句柄HANDLE hMapping。// TODO: Add your control notification handler code herevoid CPEPackerDlg
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1