Nếu ai để ý thì những chú virus thường hay sử dụng kỹ thuật này để gắn đồng bọn virus hoặc những File DLL vào File exe,VD như chú ckvo chẳng hạn ,chỉ 1 File exe thôi nhưng hễ bị kích hoạt là sinh ra liền mấy em DLL ….
Ngoài ra mình cũng thấy như winrar cũng có khả năng kết hợp các File khác nhau lại thành 1 File exe ( nhưng không rõ họ làm thế nào nữa )
ở đây mình dung cách là đem tất cả các dữ liệu cần add vào File Resource để lưu ,và khi nào kích hoạt vào thì chương trình sẽ tự tìm trong chính nó File Resource và đọc dữ liệu lên bộ nhớ rồi ghi ra File
các bạn có thể tham khảo code mẫu ở đây
Mã PHP
// giau File bat ky trong File exe
//
#include
#include
#include
#include
using namespace std;
#include "resource.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
HRSRC hr;
DWORD sizeIco;
HMODULE hmod = GetModuleHandle(0);
if(hmod ==NULL) //neu khong the tim thay FIle
{
return 0;
}
hr= FindResource(hmod,MAKEINTRESOURCE(IDR_RCDATA1), RT_RCDATA);//Tim Resource cua File
if(hr==NULL)
return 0;
sizeIco = SizeofResource(hmod,hr); //tinh dung luong cua Resource
HGLOBAL hg = LoadResource(hmod, hr); //load len bo nho
void *szRes = LockResource(hg); //dua bao bien szRes ( 1 luu lai du lieu cua Resource )
////
fstream f; //mo File de ghi ra du lieu
f.open("son.jpg", ios::out | ios::binary);
if (!f)
{
return 0; //neu khong the mo File
}//if
bool bFail = !f.write(reinterpret_castchar*>(szRes), sizeIco); //ghi File
f.close();
return 0;
}
cách làm như sau
còn đây là project