プロセス識別子を使用して、ユーザー識別子を取得できます。実際、プロセスがユーザー環境で実行される場合、ユーザーセッションIDを取得できます...
しかし、どうすればユーザー名だけでWindowsセッションIDを取得できますか?(もちろん、ユーザーがログに記録されていない場合、セッションIDを取得することはできません)。
私の状況は次のとおりです。
ユーザーデスクトップで実行されているUIアプリケーションとの通信チャネルを持つサービス(システムサービス)があります。デスクトップアプリケーションは、ProcessIdToSessionIdを使用して、デスクトップセッション識別子をサービスに伝達し、ユーザーデスクトップのサービスから直接プロセスを実行することができます(ユーザー資格情報を使用)。
私が達成したい目標は、デスクトップアプリケーションと通信することなく、セッション識別子(システムサービスからアプリケーションを実行するために必要)を導出することです。
言い換えれば、ユーザー名でセッション識別子をアサートすることは可能ですか?