メソッドで所有権を取得できなかった場合の処理です。ウィンドウを前面に出すのに失敗した場合は、メッセージで通知しておくことにします。MessageBox.Show("アプリケーションは既に起動しています。よって二重起動が検出されたとき、既に起動されていたウィンドウを前面に表示させることが可能となります。設定されてタスクバーに情報が表示されてなかったりすると、これでは上手く行かなくなってしまうことが分かりました。示していることがわかりました。返してしまう感じです。そのような現象はリソースをリリースするかどうかというよりは、何かの管理体制に依るものなのかもしれないです。利用する感じになるようです。いうものを引数で指定する必要があるようで、今度はそれを知る必要が出てきました。使って生成しておく必要があるとのことです。アプリケーションを作成している限りでは、これらを気にする必要がないため、今回の場合は逆に難しくなってきました。いう感じで、なかなか分かりにくい名前になっていました。その都度に自動生成されてもおかしくない感じの印象も受けた名前だったので、それについても調べてみたりしましたけど、ビルドによっては変更されることがあるかもしれないけれど、実行ファイルになってしまえば不変であることが定説となっているようです。自分自身で調べてみた限りでは、同一のプログラムであれば複数起動させてみても、どれも同じウィンドウクラス名を保持しているようでした。起動させる場合とバイナリを直接実行させる場合とでは、間に挟まれるプログラムの影響もあってか、ウィンドウクラス名がそれぞれ異なってくる感じでしたので、その辺りは注意して扱う必要がありそうです。APIこのことから、自分自身のウィンドウのウィンドウハンドルを知ることが出来れば、相手のウィンドウハンドルを知ったと同じになる気がします。いうものがあることが分かりました。クラスを利用する上で必要になってきます。name="hWnd">対象となるウィンドウハンドルです。保持できる最大文字数を指定します。使用した文字数が返ります。併せて準備しておけば、取得から検索までが出来るようになるのかなって感じです。name="lpClassName">ウィンドウクラス名を指定します。指定した場合には、あらゆるウィンドウクラス名が該当するものとします。name="lpWindowName">ウィンドウタイトルを指定します。指定した場合には、あらゆるウィンドウタイトルが該当するものとします。<returns>該当したウィンドウハンドルです。lpWindowName);これらを使って、二重起動検出時にウィンドウを復元するプログラムを調整していってみようと思います。ウィンドウクラス名を用いて、既存のウィンドウを最前面に移動するウィンドウを操作するために、まずはウィンドウクラス名を取得する必要があります。実行したときに自分自身を拾ってしまうことになってしまいました。扱う方針で進めておくことにします。メソッドの引数としてウィンドウクラス名を与えてあげる感じです。インスタンスを生成します。メソッドを使って、所有権を得ます。ミリ秒を指定して、所有権が取得できなくても待ちません。所有権を得られた場合には、アプリケーションの実行手続きに入ります。メソッドで所有権を取得できなかった場合は、既存のウィンドウを前面にだす手続きです。ウィンドウを前面に出すのに失敗した場合は、メッセージで通知しておくことにします。MessageBox.Show("アプリケーションは既に起動しています。インスタンスを完全に解放しておきます。メソッドも、ウィンドウクラス名を受け取ってその情報に見合うウィンドウを見つけて処理をするように変更します。渡されたウィンドウクラス名と同じウィンドウクラス名を持つウィンドウを見つけ、それを前面に表示します。name="class_name">検索するウィンドウクラス名です。ウィンドウクラス名からウィンドウハンドルを取得します。ウィンドウハンドルを取得できたかどうかの判定です。ウィンドウが最小化されていた場合には、それを元に戻します。ウィンドウを前面に移動します。result;}そして、ウィンドウが復元された際にタスクバーにアイコンが表示されていて欲しいようなアプリケーションの場合には、その辺りも気にしておく必要があります。イベントが発生しますので、それをオーバーライドして、状況に応じてタスクバーのアイコン表示を調整してあげる感じにしておくのが簡単です。サイズ変更が行われた後で、最小化状態でなければ場合はタスクバーにアイコンを表示します。FormWindowState.Minimized);}これでとりあえずは完成です。個人的には自分で決めていないウィンドウハンドルを定数で持たせておくことになんだかすっきりしないのですけど、多分これでも大丈夫なのではないかなって思います。レジストリに記録しておくとか、いろいろと方法はあると思いますけど、とりあえず何か問題が見つかるまではこの方法でやっていってみようかなってところです。多く容量がもらえます。多く容量がもらえます。