我正在将作为嵌入式资源存储的 native exe 写入 Path.GetTempFileName 返回的文件中.该功能是可取的,因为它让我忽略了避免竞争条件的实现细节。唯一的缺点是它返回一个扩展名为 .tmp
的文件名。
Process.Start
在我的系统上的记事本中打开 tmp-named-exe 文件。显然,您可以使用 p/invoke 手动指定类和动词(参见 https://stackoverflow.com/a/12681219/521757 )。在我这样做之前,是否有任何方法可以使用 .NET 框架完成同样的事情?
最佳答案
我认为这是可能的.. 在启动进程之前将 Process.StartInfo.UseShellExecute 属性设置为 False,例如:
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = @"c:\tmp\a123.tmp";
p.StartInfo.UseShellExecute = false;
p.Start();
这将直接启动进程,文件本身应被视为可执行文件。它对你有用吗?
关于c# - 有没有办法执行以临时文件名存储的 exe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27151149/