1. 외부의 프로그램을 실행하는 방법
1)
2)
3)
http://www.tipssoft.com/bulletin/board.php?bo_table=FAQ&wr_id=779
4) 사용 예시 정리
http://hizstory.tistory.com/70
위의 내용을 참고하여
원하는 프로그램을 실행 ShellExecute(NULL, "open", "C:\\test.exe", NULL, NULL, SW_SHOW);
메모장으로 파일을 열 경우. ShellExecute(NULL, "open", "notepad", "C:\\test.txt", NULL, SW_SHOW);
특정 위치의 파일 실행(탐색기) ShellExecute(NULL, "open", "explorer", "/select,D:\\test\\testC", NULL, SW_SHOW);
ShellExecuteEx 관련
SHELLEXECUTEINFO ExeInfo;
ZeroMemory( &ExeInfo, sizeof(ExeInfo) );
ExeInfo.cbSize = sizeof(ExeInfo);
ExeInfo.lpVerb = _T("open");
ExeInfo.lpFile = strFileName;
ExeInfo.fMask = SEE_MASK_FLAG_NO_UI | SEE_MASK_NOCLOSEPROCESS;
ExeInfo.nShow = SW_SHOW;
::ShellExecuteEx( &ExeInfo );
ShellExcuteEX( &ExeInfo ) 반환값
성공하면 TRUE, 실패하면 FALSE ( 실패했을 경우에 GetLastError() 함수로 에러 내용 확인 )
Error Message (DWORD타입)
ERROR_FILE_NOT_FOUND : 지정된 파일을 찾을 수 없습니다.
ERROR_PATH_NOT_FOUND : 지정된 경로를 찾을 수 없습니다.
ERROR_ACCESS_DENIED : 지정된 파일에 대한 엑세스가 거부되었습니다.
ERROR_NOT_ENOUGH_MEMORY : 충분한 메모리가 존재하지 않습니다.
출처: http://neoplanetz.tistory.com/entry/MFC-외부-프로그램을-실행하기-위해서-ShellExcute-함수-사용 [Neoplanetz]
http://terapi.tistory.com/entry/HWND%EC%99%80-HINSTANCE%EC%9D%98-%EC%B0%A8%EC%9D%B4-API