之前的一篇博文获取电脑cpu序列号在一同事电脑出现上述异常

百度一下网上只有一位外国网友朋友这个问题(地址),并且还没人回复,你能靠自己了

定位了一下出错代码:

Process process = Runtime.getRuntime().exec(new String[] { "wmic", "cpu", "get", "ProcessorId" });

文章标题显示异常信息:Cannot run program "wmic",这个wmic是什么程序呢?

WMIC扩展WMI(Windows Management Instrumentation,Windows管理规范) ,提供了从命令行接口和批命令脚本执行系统管理的支持。(摘自百度知道

既然执行命令用的,试了一下命令行输入wmic,回车,出现异常信息:

'wmic' 不是内部或外部命令,也不是可运行的程序

查看了一下上述的Windows Management InstrumentatIion服务,正常启动。猜想可能未安装,百度了一下大家都说执行第一次时windows自动安装,没有自动安装说明系统哪儿有问题,看到这篇博文提到,环境变量可能有问题,看了一下我的环境变量,和博主的略有不同,我的(正常电脑)path如下:

;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;

把这块代码放到异常电脑上,重新执行wmic命令成功,原异常也消失了

安装成功示例

运行wmic命令异常:java.io.IOException: Cannot run program "wmic": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶解决记录-LMLPHP

05-11 14:47