VC 将exe文件加载到资源里面,但运行程序后会释放到当前目录

gz442060097 2008-05-03 07:14:38
我在资源里面添加EXE文件,不过我在桌面上运行程序后,发现我加载的程序显示在桌面上,如何解决这个情况,加载的EXE文件会显示出来吗?或者至少释放到临时文件夹那里去吧 不知道这个问题本身有没有问题?
...全文
166 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gz442060097 2008-05-04
  • 打赏
  • 举报
回复
谢谢 fantasyemperor, 在你的指示下,我把那东西释放到临时文件夹下.
不过我真想知道退出时怎样删除文件.是调用*.bat来删除呢,还是怎样?
fantasyemperor 2008-05-04
  • 打赏
  • 举报
回复
你可以用GetTempPath来获取系统temp目录,把东西释放到那个里面。
gz442060097 2008-05-04
  • 打赏
  • 举报
回复
To Mackz请问退出时如何删除文件??
菜牛 2008-05-04
  • 打赏
  • 举报
回复
你不是自己创建了文件了吗?可以在退出程序的时候删除掉。
skyful123 2008-05-04
  • 打赏
  • 举报
回复
GetModuleFileName()
skyful123 2008-05-04
  • 打赏
  • 举报
回复
你应该获取其绝对地址,
而不是相对地址
gz442060097 2008-05-04
  • 打赏
  • 举报
回复
void CThesisDlg::OnBtnHelp()
{
CFile f;
char *pFilename="HELP.chm";
if(!f.Open(pFilename,CFile::modeCreate|CFile::modeWrite,NULL))
{
AfxMessageBox("can not create file!");
return;
}
CString path=f.GetFilePath();
HINSTANCE insApp=AfxGetInstanceHandle();
HRSRC hResinfo=FindResource(insApp,(LPSTR)IDR_CHM1,"CHM");
HGLOBAL hRes=LoadResource(insApp,hResinfo);
DWORD dFileLength=SizeofResource(insApp,hResinfo);
f.WriteHuge((LPSTR)hRes,dFileLength);
f.Close();
HINSTANCE HINSsd = ShellExecute(NULL, "open",path, NULL, NULL, SW_SHOWNORMAL);
return ;
}
当我在桌面上运行程序的时候,程序就释放HELP.CHM到桌面上了,我不知道是否一定会有释放出来的,我想至少不会释放到同一目录吧,请问大侠应该怎样修改呀???
过去的我 2008-05-03
  • 打赏
  • 举报
回复
那要看你是怎么释放的

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧