【发布时间】:2013-08-29 15:39:26
【问题描述】:
我是否可以检查 Powershell 是否安装在使用 Java 的计算机上。我知道如何调用 powershell 脚本,并且我可以检查操作系统是否是 Windows XP 或更高版本,但我更愿意检查 powershell.exe 是否存在或其他什么?
提前致谢
【问题讨论】:
标签: java windows powershell
我是否可以检查 Powershell 是否安装在使用 Java 的计算机上。我知道如何调用 powershell 脚本,并且我可以检查操作系统是否是 Windows XP 或更高版本,但我更愿意检查 powershell.exe 是否存在或其他什么?
提前致谢
【问题讨论】:
标签: java windows powershell
简单的解决方案是检查路径%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe 是否存在。有一个方便的方法java.io.File.Exists()。
另一种方法是查询注册表。如果 Powershell 存在,就会有密钥 HKLM\SOFTWARE\Microsoft\PowerShell。天真的方法将通过Runtime.getRuntime().exec() 启动reg.exe 并读取其输出。更复杂的方法是基于JNI/JNA,它在 Windows 上提供对注册表的访问。
【讨论】:
%WINDIR%?