exeファイルの場所をカレントディレクトリにして、同じディレクトリにある"_orig"を付加した名前のexeを呼び出すラッパーです。Windows専用です。
C:\Program Files\foo\bar.exe
ライセンス: パブリックドメイン
#define UNICODE #include <windows.h> #include <string> typedef std::basic_string<TCHAR> TString; int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { TCHAR buf[MAX_PATH]; GetModuleFileName(NULL, buf, MAX_PATH); TString mfn = buf; TString dir = mfn.substr(0, mfn.rfind('\\')); TString exe = mfn.substr(0, mfn.rfind('.')) + TEXT("_orig.exe"); LPTSTR cmdl = GetCommandLine(); LPTSTR arg = cmdl; bool dq = false; for (LPTSTR p = cmdl; *p != 0; p++) { if (*p == '\"') { dq = !dq; } else if (!dq && *p == ' ') { arg = p + 1; break; } } TString cmd = TEXT("\"") + exe + TEXT("\" ") + arg; STARTUPINFO sinfo; GetStartupInfo(&sinfo); PROCESS_INFORMATION pinfo; return CreateProcess(NULL, (LPTSTR)cmd.data(), NULL, NULL, FALSE, 0, NULL, dir.data(), &sinfo, &pinfo); }