2010-08-22 3 views
1

Как узнать, используя код C++, какой пользователь запускает конкретную службу? Программа, которую мне нужно написать, может выполняться под учетной записью локального администратора, поэтому я думаю, что проблем с разрешениями не будет.Как узнать, какая учетная запись пользователя запускает определенную службу Windows?

Возможно ли это?

TIA.

ответ

1

В зависимости от того, нужен ли вам пользователь текущей службы или пользователь, указанный в параметрах запуска службы, см. QueryServiceObjectSecurity и QueryServiceConfig в Windows API соответственно.

0

Ниже приведены мои предложения, но я не пробовал ни одного из них. API-интерфейс QueryServiceConfig2 с уровнем конфигурации службы, установленным на SERVICE_CONFIG_SERVICE_SID_INFO, а затем используйте API LookupAccountSid, чтобы найти имя учетной записи, связанную с этой службой. (или) Вы можете использовать API ToolHelp для перечисления всех процессов и определения учетной записи пользователя, связанной с этим процессом.

Смежные вопросы