Уважаемые!
Помогите пожалуйста с такой вот проблемой: необходимо запустить программу от имени другого пользвателя, для этого использую сначала LogonUser, потом CreateProcessAsUser. Но проблема в следующем, при запуске LogonUser возвращает FALSE. GetLastError() возвращает при этом 1314 (A required privilege is not held by the client) . Может кто-нибудь подсказать в какой-хоть стороне искать решение проблемы?
С уважением,
Сергей
15.04.04 15:37: Перенесено модератором из 'C/C++' — WH
Здравствуйте, Eranov_SV, Вы писали:
E_S>Уважаемые!
E_S>Помогите пожалуйста с такой вот проблемой: необходимо запустить программу от имени другого пользвателя, для этого использую сначала LogonUser, потом CreateProcessAsUser. Но проблема в следующем, при запуске LogonUser возвращает FALSE. GetLastError() возвращает при этом 1314 (A required privilege is not held by the client) . Может кто-нибудь подсказать в какой-хоть стороне искать решение проблемы?
E_S>С уважением,
E_S>Сергей
Цитата из MSDN (LogonUser):
Windows 2000: The process calling LogonUser requires the SE_TCB_NAME privilege. If the calling process does not have this privilege, LogonUser fails and GetLastError returns ERROR_PRIVILEGE_NOT_HELD
Это значит, что твой пользователь (под который ты запускаешь программу) должен иметь привилегию "Act as part of the operating system". обавить её можно через Administrative tools\Local Security Policies