2014-02-23 1 views
1

출력을 검색하기 위해 숨겨진 프로세스를 실행하려고합니다.숨겨진 프로세스를 실행하여 텍스트 파일을 만들지 않고 출력을 검색 하시겠습니까?

이 작업에서는 Exec 메서드를 사용하려고하는데 프로세스 창을 숨길 수 없다는 것이 문제입니다.

나는 그것은 내가 무엇을을 찾고 있어요 '원인 아니라고 프로세스가 숨겨진 다음 텍스트 내용을 분석 한 후 TEXTFILE에 출력을 writting, 그리고 시작 Run 방법을 사용하여 다른 방법을 볼 수 있지만, 했습니다 나는 항상 다른 언어로 나쁜 프로그래밍 습관을 피하려고 노력한다. 그래서 VBS에서의이 작업이 외부 텍스트 파일의 생성을 관리하지 않고 수행 될 수 있는지 알고 싶다. 그냥 단순화하고 텍스트 파일을 만들지 않기를 바란다.

Response = CreateObject("WScript.Shell"). _ 
      Exec("powercfg.exe /GetActiveScheme"). _ 
      StdOut.ReadAll 

PowerPlanName = Split(Split(Response, "(")(1), ")")(0) 
PowerPlanGUID = Split(Split(Response, ":")(1))(1) 

Msgbox "Information about the current energy scheme." & vbNewLine & vbNewLine & _ 
     "Name: " & PowerPlanName         & vbNewLine & _ 
     "GUID: " & PowerPlanGUID,             _ 
     64,                  _ 
     "Energy scheme (powercfg.exe)" 

WScript.Quit(0) 
+1

왜 임시 파일에서 명령 출력을 캡처하는 것이 좋지 않다고 생각하십니까? 그렇지 않습니다. –

+0

http://stackoverflow.com/a/4963209/603855와 함께 거주 할 수 있는지 알아보세요. –

답변

2

가 실행 달리 Exec에서 창을 숨길 수 없습니다 :

여기 내 코드입니다.

Exec에서 방법 : http://msdn.microsoft.com/en-us/library/ateytk4a(v=vs.84).aspx

실행 방법 : http://msdn.microsoft.com/en-us/library/d5fk67ky(v=vs.84).aspx

그러나, 임시 파일에 데이터를 캡처하는 것은 나쁜 방법이 아닙니다. 귀하의 경우, 실행 및 임시 파일에 덤핑 아마도 당신이 무엇을하려고하는 최선의 방법입니다.

관련 문제