Re[4]: CreateProcess - Access Violation при запуске процесса
От: agendus  
Дата: 22.05.09 07:07
Оценка:
Здравствуйте, Сергей Мухин, Вы писали:

СМ>Здравствуйте, agendus, Вы писали:


A>>Тогда почему MSDN 2008 говорит:

A>>

A>>psiStartInfo
A>>[in] Not supported; set to NULL.


СМ>это другая тема. Где Вы это нашли? Судя по имени psi,,, это не MSDN. У меня в MSDN 2008 написано так же как и на сайте


СМ>здесь пользуйтесь сайтом. там самая свежая информация.

СМ>Хотя CreateProcess не менялся давно.

Спасибо.
Теперь ошибки нет, вот только процесс не запускается все равно. Система типа не может найти указанный путь.

pszImageName = (LPCWSTR)"excel.exe";
STARTUPINFO si;
        PROCESS_INFORMATION procinfo;
        ZeroMemory( &si, sizeof(si) );
        si.cb = sizeof(si);
        ZeroMemory( &procinfo, sizeof(procinfo) );
        if ( CreateProcess(pszImageName, NULL/*pszCmdLine*/, NULL, NULL, FALSE, CREATE_NEW_CONSOLE,
                      NULL, NULL, &si, &procinfo)
                      )
        {
            CloseHandle(procinfo.hThread);
            CloseHandle(procinfo.hProcess);
        }
        else
        {
            LPVOID lpMsgBuf;
            FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | 
                           FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(),
                           0, // Default language
                           (LPTSTR) &lpMsgBuf, 0, NULL 
                         );
            CString szCaption;
            szCaption.LoadString(IDS_ERRMSG);
            ::MessageBox( NULL, (LPCTSTR)lpMsgBuf, (LPCTSTR)szCaption, MB_OK | MB_ICONINFORMATION );
            LocalFree( lpMsgBuf );
        }
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.