Logonuser и вызовы createprocessasuser интерактивные службы
Всем Привет
Я пытаюсь этот сложный путь, я хотел бы запустить процесс из службы с REATEPROCESSASUSER API, с 2 простыми строками у меня есть процесс, загруженный в оперативную память с corrent User, но я ничего не вижу, потому что я понял, что процесс запускается в другом контексте, теперь я пытаюсь с двух недель, но я не могу понять, как это сделать.
Кэм, ты закончишь этот код вместе со мной ?
Заранее спасибо
Джованни
HANDLE hUserToken = INVALID_HANDLE_VALUE; PROCESS_INFORMATION pi; STARTUPINFO si; BOOL bResult = FALSE; DWORD dwCreationFlags = CREATE_NEW_CONSOLE; LPVOID pEnv = NULL; ZeroMemory(&pi, sizeof(pi)); ZeroMemory(&si, sizeof(STARTUPINFO)); si.cb = sizeof(STARTUPINFO); si.lpDesktop = _T("winsta0\\default"); if (!LogonUser(Settings.szUserName, NULL, Settings.szPassword, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, &hUserToken)) goto Cleanup; bResult = CreateProcessAsUser(hUserToken, NULL, Settings.szCommandLine, NULL, NULL, FALSE, dwCreationFlags, pEnv, NULL, &si, &pi);
Что я уже пробовал:
я пробовал DuplicateTokenEX и SetokenInformation, но всегда терпел неудачу, я не знаю, что делать, на самом деле :(