1
7
滚动您自己的程序实现要比编写包装器容易得多;这听起来很简单——只需打开文件,寻找正确的位置,写入您的位,关闭文件,就可以了。 |
2
5
最简单的方法是将这个exe嵌入到您自己的文件中,并将其写入磁盘以运行它。 |
3
3
您可以将可执行文件作为二进制流资源添加到可执行文件中,并在需要时将其提取到临时文件夹中,然后使用临时文件创建新进程。 您需要做的确切代码取决于您是写.NET还是C++代码。 |
4
3
简短回答:不。 不那么简短的回答:除非它是安装程序或可执行的自解压存档。 更长的推测性回答:如果文件系统支持备用数据流,您可以将包含该实用程序的流添加到程序中,然后您的程序可以访问它自己的备用数据流,在需要时提取该实用程序。Ahaha。 |
5
3
您可以将一个可执行文件附加到另一个可执行文件的末尾,然后编写一些代码将其解包到一个临时文件夹中。 我以前也做过类似的事情,但是在Windows中有一个配置文件和一些附加到exe的位图。我这样做的方法是首先将我的东西附加到exe的末尾,然后在它后面写一个小结构,其中包含数据的文件偏移量,在您的例子中,这是第二个exe的偏移量。 运行应用程序时,查找文件末尾减去结构的大小,提取文件偏移量并将第二个exe复制到临时文件夹中,然后启动它。 好的,这里是更多的细节。这是一些创建组合的exe的伪代码。这是编译主exe后运行的一个小实用程序:
现在是提取程序。这进入您的主exe:
|
6
1
为了您的目的,我认为最简单的方法是使用自解压可执行包。例如,使用类似 Paquet Builder 它将打包exe(以及您想要的任何其他文件),并且可以配置为在用户解包自解压可执行文件时调用exe或批处理文件或其他任何文件。 |
7
1
如果该exe是为可重定位而构建的(essential linker flag/fixed:no),则实际上可以对其执行加载库、获取基地址、设置调用链并调用(跳转)。这样做是不值得的,而且很少有exe是以这种方式构建的,所以您必须有代码来重新构建它,此时您将不在这个练习中。 所以…不。 我更感兴趣的是开发人员,他们不介意在C/C++ +ASM中写文章,而不是“.NET”——但是显然是被FOpen/FISTION/FWITH所阻碍的,因为这就是你们描述的所有程序听起来像它正在做的。 |
8
1
我认为这也可以通过使用 AutoIt's FileInstall function . 为此,您必须设置autoit,使用fileinstall函数创建一个包含who exe的脚本,然后使用f.i. function RunWait 执行它们。编译为一个exe文件,您应该完成。 |
jsejcksn · 猛击:????:找不到命令 8 年前 |
JMzance · 通过ssh(linux/osx)运行作业 11 年前 |
Jagath · 如何对XSLT样式表的数据进行编码 11 年前 |
alexgolec · 如何获取二进制文件的文本部分的偏移量和大小? 11 年前 |
user2077474 · 运行可执行文件并使用C#显示确认? 11 年前 |
kjl · 区分脚本是“直接”运行还是使用Python可执行文件运行 11 年前 |