C++ 프로그램 안에서 메모장(notepad)과 같은 서드파티 애플리케이션을 직접 실행하는 방법을 알아보겠습니다. 이 작업은 생각보다 훨씬 간단하며, 명령 프롬프트에서 사용하는 명령어를 그대로 활용할 수 있습니다.
system() 함수를 이용한 프로그램 실행
핵심은 C 표준 라이브러리의 system() 함수입니다. 이 함수에 실행하고자 하는 애플리케이션의 이름을 문자열로 전달하면, 운영체제가 해당 프로그램을 자동으로 열어줍니다.
예를 들어 "notepad.exe"를 전달하면 윈도우 환경에서 메모장이 즉시 실행됩니다. 같은 방식으로 계산기(calc.exe), 그림판(mspaint.exe) 등 다른 응용 프로그램도 실행할 수 있습니다.
예제 코드
#include <iostream>
using namespace std;
int main() {
cout << "메모장(Notepad.exe)을 실행합니다." << endl;
system("notepad.exe");
return 0;
}실행 결과
위 코드를 컴파일하고 실행하면 콘솔 화면에 안내 문구가 출력된 후, 곧바로 메모장 창이 새로 열리는 것을 확인할 수 있습니다.
참고 사항
system() 함수는 간단하지만 보안상 취약점이 있을 수 있으므로, 실무 환경에서는 입력값 검증 없이 사용하지 않는 것이 좋습니다. 또한 Windows 전용 경로나 실행 파일 이름을 사용할 경우, 다른 운영체제에서는 동작하지 않을 수 있다는 점도 유의해야 합니다.