永发信息网

一个MFC项目里用ShellExecute 调用了一个a.exe可执行文件,请问如果 将该MFC项目发布成exe 可执行文件?

答案:2  悬赏:0  手机版
解决时间 2021-12-29 08:18
我要的是发布后的exe 文件 可以运行,不需要带有 a.exe 文件。意思就是 把 a.exe文件打包到最后发布的exe可执行程序中。
最佳答案
可以。假设mfc.exe是你最终发布的可执行文件。a.exe是你要包含的可执行文件。
实现的思路是:
把a.exe以二进制资源的形式放到mfc.exe的RC资源中,
运行时从mfc.exe中释放出a.exe并用ShellExecute运行。
mfc.exe该如何编写:
1.a.exe以二进制资源的形式放到mfc.exe的RC资源中
2.使用FindResource获取资源句柄
3.使用SizeofResource获取该资源(即a.exe)的大小
4.使用LoadResource将该资源加载到内存缓冲区中
5.构造CFile对象,将缓冲区中数据写入到系统临时文件夹。
6.这样在系统临时文件夹中就会生成a.exe
7.使用ShellExecute运行a.exe
这样最终只发布mfc.exe一个可执行文件,a.exe已经包含在里面了,运行时会释放出来再ShellExecute
全部回答
你好! 很遗憾,只是不可能的。 简单的shellexecute必须是磁盘物理文件,同时,标准编译也不可能将exe加入到另一个exe之中。 所以标准的编译也好,发布也好,都实现不了你的需求。 当然,你可以通过软件加壳方式将文件加壳成一体,但这个和编程无关,如果需要,自己去搜索和研究软件加壳吧。 打字不易,采纳哦!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单选题生物各项生命活动所需要的能量直接来自
施乐5570彩色复印机的废墨怎么怎么拆除
the two designs ,and you will find what pr
西安那里有注塑加工厂?
请问如何拆开苹果手机充电头
伦桑在哪直播
某物质在氧气在燃烧后,产物只有水和二氧化碳
你想做什么?你能做什么?你现在应该做什么?3个
抽咽的近反义词(要很准的)我很急!!!
千牛系统消息在哪里看
一个男生把女生送他的分手礼物换回来,是什么
巧舌如簧的意思是
用加减法解二元一次方程组时,两个方程中同一
家用洗碗机好用吗?价格多少
fedora 16 安装nv9400gt 报错:unable to loa
推荐资讯
y=tan(2x+π/3)的定义域是________,单调区
冷菜烹制的种类及要求
怎样在农村推广电子产品
求诗句,写多愁善感的女子诗句,谢谢!
单选题造成沙尘暴的天气系统是A.暖锋B.准静止
有没有张碧晨不散不见MP3,百度网盘,跪求,
已知x,y∈R,2x+3y=13,则x2+y2+1的最小值为
阳春三月,油菜花开,眼下果实已成熟.由此推
各种团购网站 0 元参与的团购有一个抽奖环节
是先有佛教还是先有基督教?
在济南坐高铁下高铁去那里住既方便又经济?急
1.“眼如丹凤,眉似卧蚕。大耳垂珠,唇口方正。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?