我想使用Java运行Shadowplay。
如果我在cmd中运行此命令,它将正常工作。
C:\\Windows\\system32\\rundll32.exe C:\\Windows\\system32\\nvspcap64.dll,ShadowPlayEnable
我在Java中尝试过,但得到“找不到模块”。
Runtime.getRuntime().exec("C:\\Windows\\system32\\rundll32.exe C:\\Windows\\system32\\nvspcap64.dll,ShadowPlayEnable");
但是,如果我删除.dll后的逗号,它将起作用。
我如何解决它?
最佳答案
尝试将命令和参数放在数组中,如下所示:
Runtime.getRuntime().exec(new String[] {"C:\\Windows\\system32\\rundll32.exe", "C:\\Windows\\system32\\nvspcap64.dll,ShadowPlayEnable"});
您也可以尝试使用
ProcessBuilder
:ProcessBuilder pb = new ProcessBuilder("C:\\Windows\\system32\\rundll32.exe", "C:\\Windows\\system32\\nvspcap64.dll,ShadowPlayEnable");
pb.start();
关于java - 启动DLL进程不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32168939/