Re: Изменение параметров CreateProcessWithLogonW
От: okman Беларусь https://searchinform.ru/
Дата: 07.03.11 06:19
Оценка: +1
Здравствуйте, blv, Вы писали:

blv>Как сделать так, чтобы CreateProcessWithLogonW не создавал новое окно, или в него можно было через пайпы ввести данные и прочитать, или сделать так чтобы при запуске перенаправлялись его потоки в input.txt и output.txt.


Посмотрите, для начала, здесь и здесь

Вкратце — нужно создать файл (или пайп), хэндл которого мог бы наследоваться, а затем передать этот
хэндл дочернему процессу через структуру STARTUPINFO (поля hStdInput, hStdOutput и hStdError, отвечающие за
соответствующие потоки ввода-вывода). Чтобы консольное окно не появлялось, нужно в wShowWindow этой же
структуры записать SW_HIDE. Поле bInheritHandles функции CreateProcess(AsUser/WithLogon, и т.п.)
должно быть TRUE — т.е. наследование должно быть включено явно.

blv>Или подскажите как CreateProcess запустить от имени конкретного пользователя.


CreateProcessWithToken, например.
Связанные функции — ImpersonateLoggedOnUser/RevertToSelf, LoadUserProfile и CreateEnvironmentBlock.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.