내 목적 : dos 명령을 사용할 수있는 C++ 프로그램을 만들고 싶습니다. 옵션 : 배치 파일을 만들고 dos 명령을 넣을 수 있습니다. C++ 프로그램에서이 파일을 사용하는 방법 ...?어떻게 C++에서 배치 파일을 사용할 수 있습니까?
9
A
답변
6
system
, ShellExecute
및 CreateProcess
호출을보고이 시나리오에서 어느 것이 적절한 지 파악하고 싶을 것입니다.
7
system("mybatchfile.bat");
0
당신은 C의 시스템 호출 C++ 프로그램이 사용자로부터 얻을 수있는 모든 명령을 실행할 ++ 프로그램을 사용할 수 있습니다.
12
C/C++에서 Windows의 배치 파일을 실행하는 데 사용할 수있는 두 가지 옵션이 있습니다.
먼저 system (또는 와이드 문자는 _wsystem)을 사용할 수 있습니다.
"시스템 함수는 운영 체제 명령으로 문자열을 실행하는 명령 인터프리터에 명령을 전달합니다. 시스템은 명령 인터프리터 파일 (CMD라는 파일)을 찾는 COMSPEC 및 PATH 환경 변수를 참조합니다. EXE Windows 2000 이상에서). "
또는 CreateProcess을 직접 사용할 수 있습니다./c를 더한 이름 :; : 배치 파일에 대한 것을
가주 lpApplicationName은 cmd.exe를 설정하고 설정 lpCommandLine 다음 인수에
는 "배치 파일을 실행하려면, 당신은 명령 인터프리터를 시작해야합니다 배치 파일. " 도스 퍼팅
5
//example that makes and then calls a batch file
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;
int main(int argc, char *argv[])
{
ofstream batch;
batch.open("mybatchfile.bat", ios::out);
batch <<"@echo OFF\n";
batch <<":START\n";
batch <<"dir C:\n";
batch <<"myc++file 2 >nul\n";
batch <<"goto :eof\n";
batch.close();
if (argc==2)
{
system("mybatchfiles.bat");
cout <<"Starting Batch File...\n";
}
}
1
는 배치 스크립트 좋은 생각 같아 내에서 명령. 그런 다음 물론 system
명령을 사용할 수 있습니다.
그러나 C++ 프로그램에서도 실행중인 배치 스크립트의 표준 출력이 필요한 경우 시도하십시오 : _popen
또는 _wpopen
.
자세한 내용과 코드 샘플은 MSDN입니다.
관련 문제
- 1. 어떻게 배치 파일을 자동으로 실행할 수 있습니까?
- 2. 배치 파일이 다른 배치 파일을 어떻게 호출 할 수 있습니까?
- 3. 우리는 객관적인 C에서 하나의 인터페이스와 구현 파일을 사용할 수 있습니까?
- 4. C에서 음수 배열 색인을 사용할 수 있습니까?
- 5. 배치 파일을 쉘 스크립트로 어떻게 다시 만들 수 있습니까?
- 6. SQLite3 DB 파일 서버 - Objective-C에서 어떻게 사용할 수 있습니까?
- 7. Git Bash의 배치 파일을 만들 수 있습니까?
- 8. 원격 배치 파일을 실행할 수 있습니까?
- 9. opendir을 C에서 반복적으로 사용할 수 있습니까?
- 10. c에서 serialport 클래스를 사용할 수 있습니까?
- 11. C에서 부울 반환 유형을 사용할 수 있습니까?
- 12. Wix - 배치 파일을 실행할 디렉토리를 어떻게 지정합니까?
- 13. django.core.files.File을 어떻게 사용할 수 있습니까?
- 14. 배치 파일은 배치 파일의 위치를 어떻게 찾을 수 있습니까?
- 15. 배치 이미지가로드되었는지 어떻게 알 수 있습니까?
- 16. 어떻게 그림을 라텍스에 배치 할 수 있습니까?
- 17. .htaccess에서 어떻게 사용할 수 있습니까?
- 18. django.auth.views.login을 어떻게 사용할 수 있습니까?
- 19. 어떻게 피봇을 사용할 수 있습니까?
- 20. 어떻게 SQLSMO를 사용할 수 있습니까
- 21. django.utils.safestring.py를 어떻게 사용할 수 있습니까?
- 22. '안전하게'window.history.pushState를 어떻게 사용할 수 있습니까?
- 23. 어떻게 Linq를 사용할 수 있습니까?
- 24. C에서 어떻게 FTGL에서 텍스트를 움직일 수 있습니까?
- 25. 어떻게 C에서 오디오를 녹음 할 수 있습니까?
- 26. C에서 문자열에 인수를 어떻게 연결할 수 있습니까?
- 27. 어떻게 C에서 비트 맵을 만들 수 있습니까?
- 28. Windows 작업 관리자에서 페이지 파일을 어떻게 사용할 수 있습니까?
- 29. 어떻게 두 web appliction에 동일한 web.config 파일을 사용할 수 있습니까?
- 30. Maven 용 hbmtemplate에서 * .hbm.xml 파일을 어떻게 입력으로 사용할 수 있습니까?
:: CreateProcess (L "cmd.exe"'정말 작동합니까? ERROR_FILE_NOT_FOUND 오류 2가 있습니다. 그러나 같은 호출에서 'L'로 바꾸면 c : \\ Windows \\ System32 \\ cmd.exe "', 그러면 기적적으로 작동합니다 ... – Liviu