Unity C#Process.GetProcesses()在编辑器与运行时产生不同的结果

时间:2016-08-17 18:53:16

标签: c# unity3d unity5

我试图杀死"探险家"当我的Unity应用程序运行时。 在编辑器中,使用System.Diagnostics.Process.GetProcessesByName(" explorer");我能够毫无问题地找到并杀死这个过程。

但是,在编译的应用程序中使用相同的代码会返回一个空数组。使用Process.GetProcesses()打印出所有可用的进程我注意到在编辑器中我可以访问更多进程,然后在编译的应用程序中进行访问。

我已尝试以管理员身份运行已编译的应用,我也尝试使用相同的结果从C:\ Program Files运行应用。

我目前的解决方法是从我的统一应用程序中运行一个杀死Windows资源管理器的.bat文件。

我不确定是什么问题。任何帮助是极大的赞赏。

1 个答案:

答案 0 :(得分:2)

解决方案:在构建设置中,我将应用更改为64位(x86_64)。完成此操作后,已编译的应用程序可以访问包括资源管理器在内的所有进程。