手机版

vc中将一个独立的dll(exe),作为资源加入资源文件中(转)

时间:2025-07-08   来源:未知    
字号:

简单点的,用WINRAR之类的软件 将两个文件 生成自解压的, 运行时释放到指定文件夹

然后你的程序调用就可以了

复杂的, 将chm添加到你exe的资源...然后调用FindResource 之类的API,读取

vc中将一个独立的dll(exe),作为资源加入资源文件中(转)

2008-07-11 15:18:33| 分类: 标签: |字号大中小 订阅

vc中将一个独立的dll(exe),作为资源加入资源文件中

具体怎么加入、释放资源这个就不必多说了吧

加入资源:Insert-Resource-Import

要求填入类型名称,随便填个即可,比如“EXEANDDLL”

释放资源:

////////////////////////////////////////////

// 加载资源、生成文件

//定位我们的自定义资源,这里因为我们是从本模块定位资源,所以将句柄简单地置为NULL即可

HRSRC hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDR_XXXXXX),

TEXT("EXEANDDLL"));//IDR_XXXXXX就是你刚才导入的a.exe或b.dll的ID了

if (NULL == hRsrc)

return FALSE;

//获取资源的大小

DWORD dwSize = SizeofResource(NULL, hRsrc);

if (0 == dwSize)

return FALSE;

//加载资源

HGLOBAL gl = LoadResource(NULL, hRsrc);

if (NULL == gl)

return FALSE;

//锁定资源

LPVOID lp = LockResource(gl);

if (NULL == lp)

return FALSE;

CString filename="a.exe";//保存的临时文件名

// CREATE_ALWAYS为不管文件存不存在都产生新文件。

HANDLE fp= CreateFile(filename ,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);

DWORD a;

//sizeofResource 得到资源文件的大小

if (!

vc中将一个独立的dll(exe),作为资源加入资源文件中(转).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)