Unity C# Process.GetProcesses() 在编辑器和运行时产生不同的结果
Unity C# Process.GetProcesses() yields different results in editor vs runtime
我正试图在我的 Unity 应用 运行 正在运行时终止 "explorer"。
在编辑器中,通过使用 System.Diagnostics.Process.GetProcessesByName("explorer");我能够毫无问题地找到并终止进程。
但是,在编译的应用程序中使用相同的代码returns一个空数组。使用 Process.GetProcesses() 打印出所有可用进程我注意到在编辑器中我可以访问比在编译应用程序中更多的进程。
我试过 运行以管理员身份编译应用程序,我也试过 运行从 C:\Program Files 编译应用程序,结果相同。
我目前的解决方法是 运行 来自我的 unity 应用程序的 .bat 文件会杀死 windows 资源管理器。
我不确定是什么问题。任何帮助是极大的赞赏。
解决方案:在构建设置中,我将应用程序更改为 64 位 (x86_64)。一旦我这样做了,编译的应用程序就可以访问所有进程,包括资源管理器。
我正试图在我的 Unity 应用 运行 正在运行时终止 "explorer"。 在编辑器中,通过使用 System.Diagnostics.Process.GetProcessesByName("explorer");我能够毫无问题地找到并终止进程。
但是,在编译的应用程序中使用相同的代码returns一个空数组。使用 Process.GetProcesses() 打印出所有可用进程我注意到在编辑器中我可以访问比在编译应用程序中更多的进程。
我试过 运行以管理员身份编译应用程序,我也试过 运行从 C:\Program Files 编译应用程序,结果相同。
我目前的解决方法是 运行 来自我的 unity 应用程序的 .bat 文件会杀死 windows 资源管理器。
我不确定是什么问题。任何帮助是极大的赞赏。
解决方案:在构建设置中,我将应用程序更改为 64 位 (x86_64)。一旦我这样做了,编译的应用程序就可以访问所有进程,包括资源管理器。