Сбой CreateProcessAsUser в Windows 7 после 7 вызовов - PullRequest
2 голосов
/ 23 марта 2012

Мой сервис порождает процесс для каждого ядра на целевой машине, используя CreateProcessAsUser. Процесс представляет собой программу MFC, которая была изменена для запуска с использованием параметров командной строки, а не элементов управления графическим интерфейсом. Он успешно работает в этом сценарии начиная с XP. У меня есть две новые машины под управлением WIN7 x64, одна с 8 ядрами и одна с 12 ядрами, но на обеих машинах 7 процессов создаются и успешно выполняются, но 8-й процесс запускается, а затем умирает. Процесс умирает при вызове MFC LoadFrame без кода выхода.

Я написал свой сервис, чтобы он мог запускаться из командной строки, и когда я выполняю его из командной строки от имени того же пользователя, которого я использую в CreateProcessAsUser, я могу успешно заставить 8-й, 9-й и т. Д. Процесс запускаться и выполняться нормально. Как вы можете себе представить, начало работы 7 заставляет меня думать, что я вызываю CreateProcessAsUser «честно» правильно. Сбой на LoadFrame указывает на проблемы с Windows Station или рабочим столом. Есть идеи?

...