2013-02-01 4 views
1

내가 원하는 것은 컴퓨터에 설치된 모든 응용 프로그램을 가져 오는 것이고 ihave는 java를 사용하여 명령 프롬프트의/output 명령을 사용하기로 결정했습니다. 내 코드 내 컴퓨터에서 코드 줄 제대로 작동했다 : 내가 다른 컴퓨터에서 프로그램을 실행하려고하면유효하지 않은 XSL 형식 (또는) 파일 이름

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\\"); 

그래도 아무 일도 일어나지 않았습니다. 오류는 여전히 존재합니다. 이 문제를 도와 줄 수있는 사람은 누구입니까?

+0

명령 줄에서 명령을 실행하면 어떻게됩니까? 그리고 실제로'en-US' 디렉토리에 파일이 있습니까? –

+0

예 있습니다. 첫 번째 파일을 복사하려고 시도하지만 Access Denied라고 표시됩니다. 이 프로그램에서 어떻게 복사 할 수 있습니까? – Karen

+0

액세스가 거부 된 경우 관리자 권한으로 java 프로그램을 실행 해보십시오. 'C : \ Windows \ SysWOW64 \ wbem \ ko-US'폴더에서 XSL 파일을 'C : \ Windows \ System32'로 복사해야 할 수도 있습니다. – MacG

답변

0

이것은 Windows 7 WMIC에서 bug입니다. 영어 Windows 설치에서 네덜란드어 국가 별 설정을 사용하는 경우 WMIC는 C:\Windows\System32\wbem\en-US이 아닌 C:\Windows\System32\wbem\nl-NL 내의 xsl 파일을 검색합니다.

해결 방법 :

  1. 복사하거나이 C:\Windows\system32\wbem\ 폴더에 C:\Windows\system32\wbem\en-US\*.xsl 파일을 이동합니다.
  2. Windows 언어 버전에 맞게 지역 설정을 변경하고 로그 아웃 한 다음 다시 로그인하십시오.
  3. 전체 경로 : WMIC process get /format:"%WINDIR%\System32\wbem\en-US\csv"을 지정하십시오.
관련 문제