首页 新闻 会员 周边

C#或C++如何产生子EXE文件

0
悬赏园豆:100 [已关闭问题] 关闭于 2010-06-15 18:25

比如我有一个EXE文件,在运行时怎么可以产生子EXE文件并按我指定的程序进行运行。如我有一个程序,我要动态生成一个更新程序,这个更新程序是一个独立的EXE程序,如何产生?

xhswzx的主页 xhswzx | 初学一级 | 园豆:146
提问于:2010-06-14 22:26
< >
分享
所有回答(3)
0

可以在主程序启动时检测服务器是否有新版本,以确定是否需要更新。参考:

http://www.cnblogs.com/SkyD/archive/2009/12/21/1628566.html

也可以使用installshield的自动检测版本功能!

邀月 | 园豆:25475 (高人七级) | 2010-06-14 22:46
0

建立一个新工程项目,然后发布时合并。

代码苦行僧 | 园豆:311 (菜鸟二级) | 2010-06-14 22:46
0

真的要這麼做,最簡單的方法是使用編譯器/鏈結器(例如Visual C++的cl.exe、Visual C#的CSC.exe)。

在運行中產生源文件,之後調用編譯器編譯/鏈結文件,生成"子EXE"。要執行"子EXE",C++可用execXXX()系列函數,C#可用System.Diagnostics.Process類。

可以透過命令行參數或/及環境變量去告訴"子EXE"如何運行。

Milo Yip | 园豆:210 (菜鸟二级) | 2010-06-15 11:19
不能直接按照EXE的文件格式来生成一个EXE文件吗?
支持(0) 反对(0) xhswzx | 园豆:146 (初学一级) | 2010-06-15 18:24
@xhswzx:不是不可能。這需要理解EXE的PE Format和機器語言。而各種語言的編譯器/鏈接器就是為了編譯高階語言才應運而生的。另一個辦法是把數據置於該EXE的末端,而讓EXE可按讀取自己文件。
支持(0) 反对(0) Milo Yip | 园豆:210 (菜鸟二级) | 2010-06-19 21:29
他可能想要那种类似于胶水语言一样的东西,可以让他尝试动态语言,lua或者py
支持(0) 反对(0) egmkang | 园豆:-734 (初学一级) | 2010-06-22 09:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册