2013-07-29 3 views
0

나는 여러 줄의 배치 파일은 다음과 같은 사용하여 만든이 : cmd를 cmd_alts 합법적 인 멀티 라인 배치 명령입니다QT 배치 파일이 실행되지 않습니다.

QFile file("C:/temp_exec.bat"); 
file.open(QIODevice::WriteOnly | QIODevice::Text); 
QTextStream out(&file); 
out << cmd; 
out << "\n"; 
out << cmd_alt; 
file.close(); 

. 생성 된 파일은 Windows 내에서 두 번 클릭하면 제대로 실행되지만 QT를 통해 실행되지 않습니다. 말 그대로 모든 시도했습니다

이 가능한,이 내 최신 시도했다

필요한 모든 Qt를 가진 폴더 안에 (Qt는 창조주에서 잘 작동하지만 독립 실행 형 실행에
QProcess p; 
p.setWorkingDirectory("C:/"); 
p.execute("temp_exec.bat"); 
p.waitForFinished(); 

DLL의), 아무 일도 일어나지 않습니다. CMD 쉘은 아무 일도 일어나지 않은 것처럼 열리고 닫힙니다.

cd /d "Z:\FRONT 2" & for %%i in (*) do move /Y "%%i" "Z:\2005\050016" 
cd /d "Z:\FRONT 2" & for /d %%i in (*) do ROBOCOPY /E /IS /MOVE "%%i" "Z:\2005\050016" 

하면 두 번 클릭하고 괜찮아 윈도우 내에서 실행하지만, Qt를 통해, 그렇지 않다 :

여기 temp_exec.bat 내부에서 만들어지는거야.

왜 프레임 워크가 QProcess STRANGE를 통해 WHY가되는지 설명하지 못합니다.

아이디어가 있으십니까? 도움? 감사.

답변

0

nvm이 해결했습니다. 중고 p.startDetached()

관련 문제