9.アプリケーション(タスク)の2重起動を防止する方法



< 使用用途 >
アプリケーションの2重起動を防止させる事ができます。


< 説明 >
このページの2重起動防止のやり方はプログラム内でアプリケーション(フォーム)のインスタンスが既に実行されているかどうかを判断して見極める方法です。
フォームのインスタンス判断としてApp.PrevInstanceを使用します。

App.PrevInstance が TRUE ならすでに実行されてます。
App.PrevInstance が FALSE ならまだ実行されてません。

:WINDOWS NTだと上手く動作しない事があります。理由はユーザー デスクトップ コンピュータのクライアント プログラムが、コンポーネントが提供するオブジェクトのいずれかを要求します。
コンポーネントは物理的に同じコンピュータ上に存在するため、コンポーネントはユーザーデスクトップ内で起動されます。その後、ほかのコンピュータ上のクライアント プログラムが、分散 COM を使ってコンポーネントが
提供するオブジェクトのいずれかを要求します。コンポーネントの 2 つ目のインスタンスがシステム デスクトップ内で
起動されるためです。


< SAMPLE >
Private Sub Form_Load()
 '条件文 = 真ならすでに開かれてますのでアプリケーションを終了します(サンプル)
  If App.PrevInstance = True Then
   MsgBox "すでにこのアプリケーションは開かれてます!!!"
   End
  End If
END





Visual Basic 技術テクニックへ

ホーム PV ランキング