1

我想做的是在计算机中获取所有已安装的应用程序,并且我决定使用 java 的命令提示符的 /output 命令。我的代码在我的计算机中与这行代码一起正常工作:

Process proc = rt.exec("wmic /output:C:\\Users\\Public\\Documents\\list.csv product get name,version /format:csv ");

但是,当我尝试在另一台计算机上运行该程序时,我遇到了“无效的 XSL 格式或文件名”错误。我尝试阅读其他问题,并在上​​面的代码之前添加了这行代码:

proc2 = rt.exec("xcopy /y C:\\Windows\\System32\\wbem\\en-US\\*.xsl C:\\Windows\\System32\\");

但仍然没有发生任何事情。错误仍然存​​在。谁能帮我解决这个问题?

4

1 回答 1

0

这是 Windows 7 WMIC 中的一个错误。当您在英语 Windows 安装中使用(例如)荷兰语区域设置时,WMIC 会搜索其中的 xsl 文件C:\Windows\System32\wbem\nl-NL,而不是C:\Windows\System32\wbem\en-US它们所在的位置。

解决方法:

  1. C:\Windows\system32\wbem\en-US\*.xsl将文件复制或向上移动到文件C:\Windows\system32\wbem\夹中。
  2. 更改您的区域设置以匹配您的 Windows 语言版本,注销并重新登录。
  3. 指定完整路径:WMIC process get /format:"%WINDIR%\System32\wbem\en-US\csv".
于 2015-08-13T09:55:30.753 回答