您的位置:首页 > 其它

将zip文件加入资源

2011-03-23 15:31 387 查看
我需要将两个zip文件加入资源中 就是我自己可以用着两个zip文件但是用户看不到 所以就加入资源

1.先将zip文件加入工程资源

加入资源:Insert-Resource-Import
要求填入类型名称,随便填个即可,比如"INSERTZIP"

HRSRC hres = FindResource (NULL, MAKEINTRESOURCE(你添加的资源的ID), "INSERTZIP");
HGDIOBJ hgs = LoadResource (NULL, hres);

if (hgs == NULL)
{
return;
}

2. //文件要存储的地方(你要创建的临时文件 将资源里面的文件写到一个临时文件夹下在做其他操作比如解压之类的,在程序最后如果不需要
// 则要删除这个临时文件)
//这里我是存储在了system32下
GetSystemDirectory( FirstSourPath, MAX_PATH );
lstrcat( FirstSourPath, _T( "xxxxx.zip" ) );

3. //看要存文件的文件夹是否存在?不存在则创建
int dwPos = 0;
CString cFolder;
CString strCreatSoursPath = FirstSourPath;
dwPos = strCreatSoursPath.ReverseFind('//');
cFolder = strCreatSoursPath.Left(dwPos);

//如果文件夹不存在创建文件夹
if( !CFolderUtils::DirExists( cFolder.GetBuffer() ) )
{
CFolderUtils::CreateFolder( cFolder.GetBuffer() );
}

4. //将文件写进去(写入临时存放的地方)
CFile file;
if(!file.Open ((LPCTSTR)FirstSourPath, CFile::modeCreate|CFile::modeWrite) )
{
return;
}

file.Write (hgs, SizeofResource(NULL, hres));
file.Close ();

5. //然后你就可以做你自己想做的操作了 我这里是把zip文件解压到指定文件夹了

6. //你要做的操作完成后 删除写入的临时文件

TempFile.Remove("文件的路径");

7. //好了,全部工作完成了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: