Здравствуйте Princ, вы писали:
P>>>2) Как правильнее из сервиса открыть зарегистрированный в системе документ (те открыть связанную программу и передать ей этот файл). AF>>С какой целью? С трудом могу представить себе сценарий, когда из сервиса нужно открывать документы. P>Надо ;-(
Потрясающей силы аргументация.
P>А если: P>1) LogonUser P>2) ImpersonateLoggedOnUser P>3) ShellExecuteEx P>4) RevertToSelf P>будет работать всегда?
Это не будет работать, как ожидается, поскольку CreateProcess использует primary token, а не impersonation token, чтобы определить в контексте какого пользователя создавать новый процесс.
P>есть юзер за компом или нет?...
Вот меня больше всего и интересует, что мы ожидаем от запущенной программы с открытым документом, когда в системе нет интерактивного пользователя.