VB6二重起動を禁止する

スポンサーリンク

VB6 では、App.PrevInstance プロパティで判断します。App.PrevInstance プロパティは、実行ファイル名を変更されると別プロセス扱いになる という弱点が同様にあり確実とは言えません。App.PrevInstance プロパティは実行ファイルまでのパス + 実行ファイル名 で判断しています。確実に二重起動を防止したい場合は 二重起動を確実に禁止する をご覧ください。

サンプルコード

以下にサンプルコードを示します。

VB6.0 以前
' エントリ ポイント
Public Sub Main()
    ' アプリケーションのインスタンスが生成されていない時は起動する
    If App.PrevInstance = False Then
        Dim cForm1 As Form1
        Set cForm1 = New Form1

        Call cForm1.Show(vbModal)

    ' 既に起動中である旨を表示 (推奨しません)
    'Else
    '    Call MsgBox("既に起動中です")
    End If
End Sub

関連するリファレンス

準備中です。

スポンサーリンク