将exe十六进制/二进制文件复制到另一个exe并在用户单击时运行

时间:2016-09-19 11:32:53

标签: c# exe

byte[] bytesF = File.ReadAllBytes("G:\\finish.exe");
byte[] bytesC = File.ReadAllBytes("C:\\copy.exe");

using (MemoryStream ms = new MemoryStream())
{
      ms.Write(bytesF, 0, bytesF.Length);
      ms.Write(bytesC, 0, bytesC.Length);
      File.WriteAllBytes("G:\\finish.exe", ms.ToArray());
}

使用c#

功能工作,当我检查十六进制(六角车间)时,我看到了两个程序。

finish.exe - 它是一个普通的exe(例如游戏,但在我的程序中它是一个打印你好的cmd)

copy.exe - 它在桌面上打开了一个文件。

问题是当我运行文件完成它只打开第一个文件 我想一键打开这两个程序。

我该怎么办?感谢...

1 个答案:

答案 0 :(得分:2)

这不是可执行的工作方式,他们有一个已定义的结构,你不能将它们连在一起并期望它们都能运行。

你最好的选择是某种存根,它将可执行文件从资源提取到一个临时目录,并从那里运行它们,并在退出之前等待它们终止。