我有一个完整的程序,但现在,我希望它能够更新。所以我想通过新代码更改可执行文件中的“代码”,而不必重新编译它。
有可能吗?如果是,我该怎么办,我在Qt Creator中使用C ++进行编码。
感谢您的任何建议/线索
答案 0 :(得分:2)
C ++无法做到这一点。使用QT,您可以对要更改的代码执行javascript实现并更新。
答案 1 :(得分:1)
我完全按照Jon告诉我的做法:简单地用新的替换旧的
答案 2 :(得分:0)
虽然技术上不能在没有重新编译的情况下在C ++中执行此操作,但如果您不想用其他编程语言重写,那么可以编写一个小帮助程序(原始程序是没有运行)重新编译第一个程序。
如果你真的想这样做(这一点都不难),我会调查GNU g++。 如果您使用的是Windows,那么您可能需要MinGW(我认为安装了g ++)。两者都是免费/开源的,属于GNU GPL(如果您计划销售您的程序,您需要注意的事项。但是,您可以自由地放弃它)。
基本上你可以运行你的程序,在关闭之前调用另一个程序,并让该程序充当一个脚本来调用g ++来重新编译你的代码。我以前做过这个,但为了更快的调试而不是实际发布一个以这种方式工作的程序。
答案 3 :(得分:-1)
不确定这是否满足您的需求,但您是否看过ClickOnce平台?虽然代码仍在服务器上重新编译,但客户端可执行文件通过ClickOnce进行更新。