|
WinExec() 함수 실행시에 에러가 발생한다면 반환 값을 확인해 보세요.
실행된 프로그램에서 오류가 발생한다면, 실행된 프로그램의 PATH 때문에 오류가 발생할 수 있더군요.
실행시킬 프로그램의 WinMain() 상단에 다음의 코드를 넣어 실행 PATH를 재설정 할 수 있습니다.
// 실행프로그램 파일이 있는 곳으로 현재 디렉토리를 변경
char szPath[MAX_PATH];
if(::GetModuleFileName( NULL, szPath, MAX_PATH ))
{
char path_buffer[_MAX_PATH];
char drive[_MAX_DRIVE];
char dir[_MAX_DIR];
char fname[_MAX_FNAME];
char ext[_MAX_EXT];
std::_splitpath( szPath, drive, dir, fname, ext );
char strDirPath[_MAX_PATH];
std::sprintf(strDirPath,"%s%s",drive,dir);
if(std::chdir(strDirPath)!=0)
{
throw Exception("Can't change directory to application installed...");
}
}
|