Вы должны иметь возможность использовать ShellExecute следующим образом: (корректировка параметров, отправляемых в ShellExecute для вашей ситуации) http://msdn.microsoft.com/en-us/library/bb762153(VS.85).aspx?ppud=4
HINSTANCE hinst = ShellExecute( NULL, _T("open"), commandLine.c_str(), additionalParams.c_str(), NULL, SW_RESTORE );
if(hinst <= (HINSTANCE)SHELLEXERROR)// see: http://msdn2.microsoft.com/en-us/library/bb762153.aspx for further info on the return values
Теперь, когда вы используете Win7, у вас может быть проблема с привилегиями, и вам нужно работать на повышенном уровне (например, администратор), вы можете проверить это, открыв cmd от имени администратора и запустив ваш exe из другого каталога
и, как уже упоминал Стив, вы, безусловно, можете использовать CreateProcess.
НТН,
EB