ユーザーセッションごとに1つのインスタンスしか実行できないようにするアプリケーションがあります。ユーザーがアプリケーションを再び起動するためにクリックすると、すでにフォーカスを当てています。 私はこのチュートリアルWPF Single Instance ApplicationApp.xaml.csから単一インスタンスクラスを呼び出す方法
のステップと、このチュートリアルの手順に従っている:
ステップ1:プロジェクトにファイルSingleInstance.csを追加します。
手順2:プロジェクトへの参照を追加:System.Runtime.Remoting。
手順3:アプリケーションクラスに(SingleInstance.csで定義された)ISingleInstanceAppを実装します。
このインタフェースの唯一の方法は次のとおりです。
隠すコードのコピー ブールSignalExternalCommandLineArgs(IListのargsを)アプリケーションの2番目のインスタンスを実行しようとしたときに このメソッドが呼び出されます。 argsパラメータは、2番目のインスタンスに渡されるコマンドライン引数と同じです。
手順4:単一インスタンスクラスを使用する独自のメイン関数を定義します。
アプリのクラスは今、このようになります。
隠すコードのコピー /// ステップ5:新しいメインエントリポイントを設定します。
プロジェクトプロパティ - >アプリケーションを選択し、 "スタートアップオブジェクト"を "(未設定)"ではなくAppクラス名に設定します。
手順6:デフォルトのWPFメイン機能をキャンセルします。
[アプリケーション定義]の代わりに[プロパティ]を右クリックし、[ビルドアクション]を[ページ]に設定します。
私はステップ4で固執します。私は、単一インスタンスクラスを使用する自分のMain関数をどのように定義するのか分かりません。 誰でもおかげで
は([私の質問]を見てくださいhttp://stackoverflow.com/questions/38473277/wpf-single-instance-window-clickonce-pass-arguments)パラメーター部分を無視する – lokusking