問題タブ [single-instance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
contextmenu - Windowsレジストリ。アプリケーションの単一インスタンス(多くはない)を開始します。
.NETアプリケーションを作成しましたが、Windowsのコンテキストメニューにそのアプリケーションへの参照を追加する必要があります。私はこのようにそれをしました:added HKEY_CLASSES_ROOT\*\shell\myapp\command to my registry
。動作しますが、選択したファイルの数と同じ数のアプリのインスタンスを起動します。私は本当にアプリのインスタンスを1つだけ必要とします。
残りのすべてのインスタンスのパラメーターを開始して収集するために、を実装しmutex
ました。しかし、これが正しい方法だとは思いません。
たとえば、procmon
複数のファイル->コンテキストメニュー->アーカイブに追加を選択したときの7-zipのパフォーマンスを見てきました。7-zipのインスタンスが1つだけ開始されました。複数のファイルを選択した場合のシングルインスタンスアプリのロジック->コンテキストメニュー->私のアプリはレジストリで実行する必要があると思います。役立つチュートリアルが見つかりませんでした。ありがとう!
.net - 相互排除が .NET Mutex クラスで機能しない
2 つの名前付きミューテックスを使用して相互排除を実現するにはどうすればよいですか? 次のコードは機能するはずですが、機能しません。
Process Explorer を使用して、同じ名前を参照する 2 つのミューテックス ハンドルがあることを確認しました。これはうまくいくはずです...何が欠けていますか?
android - アクセス許可エラー java.lang.SecurityException の取得: 電子メールの添付ファイル名の取得中に 3.x Android デバイスでアクセス許可が拒否される
起動モードを「singleInstance」にしたときに、MYApp で電子メールを開く際に問題に直面しています。
メールの添付ファイルからファイル名を読み取り、画面に表示するサンプル Android プロジェクトを添付しました。onCreate の場合は問題なく動作しますが、アプリの起動モードが singleInstance の場合、onNewIntent でエラーがスローされます。
Launchmode.java
}
Androidマニフェスト
再現手順 1) デバイスに apk をインストールします。2) デバイスの Gmail ネイティブ アプリに移動し、添付ファイル (オフィス ドキュメント) を開いて表示します。3) LaunchMode アプリを選択してアクションを完了します。4) LaunchMode アプリは画面にファイル名を表示します。
これは初めて (onCreate フロー) は正常に動作しますが、このアプリがバックグラウンドで切り替えられ、再度 2、3、4 の手順を試すと、エラーでアプリがクラッシュします。
これを修正する必要があるのは、アプリケーションの単一のインスタンスが必要であり、電子メールの添付ファイル名も取得する必要があるためです。ここで何か不足している場合はお知らせください。
ここでの私の質問は、onCreate のフローで機能し、onNewIntent の場合は機能しない理由です。
注: 1) 2.x 携帯電話で正常に動作します。 2) シングルトップ起動モードで正常に動作します。3) Gmail アプリの更新。ここにリンク:
android - アプリケーションのインスタンスを1つだけ有効にする方法
Androidで必要なアプリのインスタンスは1つだけです。インストール後にアプリを実行してホーム画面に移動し、アプリを再度実行すると(アプリのアイコンをクリック)、2番目のインスタンスが開きます。2番目のインスタンスを実行しないように、すでに実行中の最初のインスタンスを開く必要があります。これを解決する方法がわかりません。
android - メインアクティビティで「singleInstance」を使用する必要があり、別のアクティビティを一番上に持ってくる必要もあります
アプリのインスタンスは 1 つしか必要ないためandroid:launchMode="singleInstance"
、マニフェストのメイン アクティビティ セクションで使用しますが、これにより、2 番目のアクティビティが表示されているときにホーム ボタンをクリックしてアプリを再度起動すると、メイン アクティビティが表示されますが、表示する必要があります。 2 番目のアクティビティ (標準的な動作が必要です)。アクティビティのマニフェストで使用すると問題が発生するsingleInstance
ため、このアクティビティは常に一番上にあります。さまざまなフラグを使用して 2 番目のアクティビティを開始しようとしましたが、うまくいきません。(android:launchMode="singleTask"
あまりにも動作しません)。
android - CountdownTimerが実行されているかどうかを検出します
カウントダウンタイマーを作成しましたが、ブール値がtrueの場合に開始されます。タイマーが実行されているかどうかを検出すると、さらに良い結果が得られます。それを行う方法はありますか?
次のcountdowntimerを使用して次のクラスを作成しました。
java - JInternalFrame のインスタンスを 1 つだけ許可する
マウス クリックのイベントで JDesktopPane に追加される複数のJInternalFramesを持つ Swing アプリケーションを作成しました。同じ内部フレームのインスタンスを1 つだけDesktopPane に表示したい。ユーザーがフレームを開いたときに、同じフレームが 2 回表示されるのは望ましくありません。フレームが既に開いている場合は、エラー メッセージが表示されます。
どうもありがとう :)
c# - アプリケーションを複数回開かないようにするにはどうすればよいですか?
exe ファイルを何度もクリックした後、アプリケーションが 1 回だけ開くように定義するにはどうすればよいですか?
c# - シングルトンファクトリーの代替
制御できないクラスライブラリのラッパーを作成しています。Target
このライブラリには、 1回だけインスタンス化されることを確認したいクラス(これを呼びましょう)がありますが、それ自体はシングルトンではありません。私は次のようにSingleton-Factoryパターンを使用することを考えました:
その後、次のことができます。
次に、ファクトリを次のように完全に静的にすることで、これを単純化することを考えました。
ターゲットインスタンスへのアクセスは次のようになります。
StaticFactory
これはスレッドセーフであり、ターゲットクラスの単一インスタンスへのグローバルアクセスを提供すると確信しています。私が考えていなかったこれに何か問題がありますか?
c# - 2 番目のインスタンスを開始しようとしたときの CantStartSingleInstanceException
here で説明されているアプローチを使用して、単一インスタンス アプリケーションを構築しようとしています。
このソリューションを試した理由は、アプリを起動する 2 回目の試行から最初のインスタンスにコマンドラインを渡す必要があり、これが最も簡単な方法だと思われたからです。
サポートする必要がある OS フレーバー:
- Windows XP SP3
- Windows 7 32 ビット
- Windows 7 64 ビット
3つのOSバージョンすべてで動作していますが、Windows 7 32Bitを搭載したマシンが1つあり、これが CantStartSingleInstanceException でクラッシュします。
コードは次のとおりです。
SingleInstanceController.cs:
Program.cs:
テスト目的のため、このフォームは、コマンド ライン引数を表示するリスト ボックスを含む単純なフォームです。
これがその1台のマシンで機能しない理由はありますか? 私はこれを2日間いじっていますが、理解できません...