セッションごとにユーザーを 1 つのインスタンスに制限しようとするデスクトップ アプリケーションがあります (したがって、各ユーザー/リモート デスクトップ接続でコピーを実行できます)。
これを行うには、イベント名に "Local\..." プレフィックスを付けて EventWaitHandle を作成し、作成されない場合はプログラムを終了します。
検証ツールからの警告は次のようになります。
警告
マルチユーザー セッション テスト
• 警告: マルチ ユーザー セッション テストで次のエラーが検出されました: ◦ テスト プロセスの実行中にエラーが発生しました。
• 修正しない場合の影響: 複数のユーザーが同時セッションでアプリを起動できない可能性があります。
• 修正方法: ローカルでもリモートでも、アプリが複数の同時セッションをブロックしていないことを確認します。アプリは、複数の同時セッションをチェックまたはブロックするために、グローバル ミューテックスまたはその他の名前付きオブジェクトに依存してはなりません。アプリでユーザーごとに複数の同時セッションを許可できない場合は、ミューテックスまたはその他の名前付きオブジェクトにユーザーごとまたはセッションごとの名前空間を使用します。詳細については、次のリンクを参照してください。 リモート デスクトップ サービスのプログラミング ガイドライン http://msdn.microsoft.com/library/windows/desktop/aa383490(v=vs.85).aspx
このエラーの意味と、それを取り除く方法について何か考えはありますか?
複数のアカウントにログインしてプログラムをテストしたところ、以前のセッションでプログラムが実行されていたにもかかわらず、新しいセッションでプログラムが実行されていないことが正しく検出されました。
失敗の詳細な説明を取得する方法はありますか?