可执行文件自己访问自己

ggg_sss_lll 2011-04-28 11:16:04
比如:可执行文件的名字:A.EXE
在可执行文件代码中有这样的代码:
CFile file;
file.Open(_T("A.EXE"),CFile::modeRead);
....
问:为什么程序运行后,立即执行上述语句,会出错,而,
移动一下窗口,按一下别的按钮,再执行上述语句会顺利通过.
是什么原因造成的?
...全文
136 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
phyf_Anlymi 2011-05-20
  • 打赏
  • 举报
回复
学习!¬
ggg_sss_lll 2011-05-05
  • 打赏
  • 举报
回复
同意楼上分析
lyingbo 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用楼主 ggg_sss_lll 的回复:]
比如:可执行文件的名字:A.EXE
在可执行文件代码中有这样的代码:
CFile file;
file.Open(_T("A.EXE"),CFile::modeRead);
....
问:为什么程序运行后,立即执行上述语句,会出错,而,
移动一下窗口,按一下别的按钮,再执行上述语句会顺利通过.
是什么原因造成的?
[/Quote]

“运行后,立即执行上述语句,会出错”可能是:
程序运行一可能是在内存中运行的,A.EXE程序刚开始执行,还没有完全脱离文件到内存中,你又Open打开它,可能会冲突

“移动一下窗口,按一下别的按钮,再执行上述语句会顺利通过”此时可能程序可能已经全部转移到内存中,与文件脱离,可能就不会再冲突了

仅仅是猜想

7,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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