我有一个第 3 方 EXE。我只需要从我的 C# 应用程序运行它。
我的主要目标是从我的 C# 文件中获取第 3 方可执行文件的版权。
有没有更好的方法来做到这一点?
我该怎么做?
最佳答案
- 首先将嵌入的可执行文件作为资源文件添加到您现有的资源文件中,如果您没有,则需要[将现有项目添加到您的项目中,然后选择资源文件]
- 当您在资源编辑器页面中添加可执行文件时,选择类型为[文件],然后找到您嵌入的可执行文件并添加它。例如命名为“subexe.exe”的文件,则资源设计cs文件将添加如下代码:
internal static byte[] SubExe { get { object obj = ResourceManager.GetObject("SubExe", resourceCulture); return ((byte[])(obj)); } }
添加一个方法来访问你的资源,这也很简单,只需将以下代码添加到你的资源设计器cs文件中
public static byte[] GetSubExe() { return SubExe; }
在您的主要可执行源代码中,添加以下内容以读取资源并将其写入新文件
string tempExeName = Path.Combine(Directory.GetCurrentDirectory(), "A3E5.exe");<p></p> <pre><code> using(FileStream fsDst = new FileStream(tempExeName,FileMode.CreateNew,FileAccess.Write)) { byte[] bytes = Resource1.GetSubExe(); fsDst.Write(bytes, 0, bytes.Length); } </code></pre> <p></p>
使用进程运行新的可执行文件
关于c# - 在 C# 中将 Exe 文件作为嵌入式资源运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15470090/