1

C++ コードを使用して、どのユーザーが特定のサービスを実行しているかを知るにはどうすればよいですか? 私が書く必要のあるプログラムは、ローカル管理者アカウントで実行される可能性があるため、権限の問題は発生しないと思います。

出来ますか?

ティア。

4

2 に答える 2

1

現在実行中のサービスのユーザーが必要か、サービスのスタートアップ パラメーターで指定されたユーザーが必要かによって、Windows API のQueryServiceObjectSecurity関数とQueryServiceConfig関数をそれぞれ参照してください。

于 2010-08-22T15:58:22.950 に答える
0

以下は私の提案ですが、私はそれらのどれも試していません。サービス構成レベルを SERVICE_CONFIG_SERVICE_SID_INFO に設定して QueryServiceConfig2 API を使用してから、LookupAccountSid API使用してサービスに関連付けられたアカウント名を見つけることができます。(または) ToolHelp API を使用して、すべてのプロセスを列挙し、プロセスに関連付けられているユーザー アカウントを特定することができます。

于 2010-08-22T16:00:50.310 に答える