之前的一篇博文获取电脑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命令成功,原异常也消失了
安装成功示例