フォームの2重起動を防止、なおかつコマンドラインを取得するには?

解決


yuu  2005-05-28 22:55:11  No: 90138  IP: [192.*.*.*]

エクスプローラから、WMVファイルをダブルクリックして、WindowMediaPlayerであるファイルを再生し、次にまた、別のWMVファイルをクリックすると、新たなWindowsMediaPlayerは、起動しないで、クリックしたファイルが再生するのですが、このようなことは、VBでは、可能なのでしょうか?

Main()で
If App.PrevInstance Then
  End
End If
のような処理をしているのですが、

どこでCommandから引数を引き取れば、いいのでしょうか?
同じプログラムなら終了し、現在のプログラムをアクティブにし、
Commandをわたせばと考えています。

WIN2000
VB6.0

編集 削除
Yuu  2005-05-28 23:29:50  No: 90139  IP: [192.*.*.*]

ちなみに、作成アプリにファイルが関連付けてあるものとします。

WIN2000
VB6.0

編集 削除
K.J.K.  2005-05-29 17:12:48  No: 90140  IP: [192.*.*.*]

DDEを用いるのが無難なところでしょう。もっとも、最近はこの手の
サンプルがほとんど公開されなくなってしまっていますが。
# 以前は結構あったものです。

編集 削除
Yuu  2005-05-30 10:17:45  No: 90141  IP: [192.*.*.*]

DDEをキーにさがしてみたのですが、完全に、別アプリ(送信側、受信側)でつくられているサンプルが多かったのですが、
同じアプリで(プロセスは、違う)送信、受信することは、可能なのでしょうか?

編集 削除
Yuu  2005-05-30 10:41:15  No: 90142  IP: [192.*.*.*]

サンプルが見つかりました。

http://www.vb-helper.com/howto_one_instance_dde_editor.html

何とかできそうです。

K.J.K.さま助かりました。

編集 削除
yuu  2005-05-30 10:41:53  No: 90143  IP: [192.*.*.*]

解決チェックを忘れていました。

編集 削除