WindowsFormsApplicationBase.StartupNextInstance イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
単一インスタンス アプリケーションを起動しようとしたときに、アプリケーションが既にアクティブな場合に発生します。
public:
event Microsoft::VisualBasic::ApplicationServices::StartupNextInstanceEventHandler ^ StartupNextInstance;
public event Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventHandler StartupNextInstance;
member this.StartupNextInstance : Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventHandler
Public Custom Event StartupNextInstance As StartupNextInstanceEventHandler
Public Event StartupNextInstance As StartupNextInstanceEventHandler
イベントの種類
例
この例では、StartupNextInstance イベント ハンドラーの e パラメーターを使用して、アプリケーションのコマンド ライン引数を調べます。
/input=で始まる引数が見つかった場合は、その引数の残りの部分が表示されます。
Private Sub MyApplication_StartupNextInstance(
sender As Object,
e As Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs
) Handles Me.StartupNextInstance
Dim inputArgument As String = "/input="
Dim inputName As String = ""
For Each s As String In e.CommandLine
If s.ToLower.StartsWith(inputArgument) Then
inputName = s.Remove(0, inputArgument.Length)
End If
Next
If inputName = "" Then
MsgBox("No input name")
Else
MsgBox("Input name: " & inputName)
End If
End Sub
アプリケーション イベントのコード エディター ウィンドウにコードを入力する必要があります。 このウィンドウにアクセスするには、このトピックの「解説」セクションの手順に従います。 詳細については、 アプリケーション ページ、プロジェクト デザイナー (Visual Basic)を参照してください。
注釈
単一インスタンス アプリケーションは、既にアクティブなときにアプリケーションを再起動しようとすると、 StartupNextInstance イベントを発生させます。 単一インスタンス アプリケーションが初めて起動すると、 Startup イベントが発生します。 詳細については、Startupを参照してください。
このイベントは、Visual Basic アプリケーション モデルの一部です。 詳細については、「 Visual Basic アプリケーション モデルの概要」を参照してください。
このイベントは、他のユーザー インターフェイス イベントと共にアプリケーションのメイン スレッドで発生します。 これにより、イベント ハンドラーはアプリケーションのユーザー インターフェイスに直接アクセスできます。 ただし、このイベントが発生したときにアプリケーションが別のユーザー インターフェイス イベントの処理にビジー状態になっている場合は、他のイベント ハンドラーが終了するか、 DoEvents メソッドを呼び出すまで、このイベントを処理できません。
注
StartupNextInstance イベントは、単一インスタンス アプリケーションでのみ発生します。 アプリケーションの単一インスタンス動作を有効にするには、プロジェクト デザイナーの [ 単一インスタンス アプリケーションの作成 ] チェック ボックスをオンにする必要があります。
アプリケーションを単一インスタンスにするには:
- ソリューション エクスプローラーでプロジェクトを選択した状態で、[プロジェクト] メニューの [プロパティ] をクリックします。
- [ アプリケーション ] タブをクリックします。
- [ 単一インスタンス アプリケーションの作成 ] チェック ボックスをオンにします。|
e パラメーターの CommandLine プロパティを使用して、後続の単一インスタンス アプリケーションの起動を試みる引数にアクセスする必要があります。
CommandLineArgs プロパティは、単一インスタンス アプリケーションの最初のインスタンスを開始するために使用する引数を提供します。
StartupNextInstance イベント ハンドラーのコードは、既定では非表示になっているApplicationEvents.vb ファイルに格納されます。
アプリケーション イベントのコード エディター ウィンドウにアクセスするには: |1。
ソリューション エクスプローラーでプロジェクトを選択した状態で、[プロジェクト] メニューの [プロパティ] をクリックします。
2. [ アプリケーション ] タブをクリックします。
3. [ アプリケーション イベントの表示 ] ボタンをクリックしてコード エディターを開きます。
詳細については、 アプリケーション ページ、プロジェクト デザイナー (Visual Basic)を参照してください。
次の表に、 My.Application.StartupNextInstance イベントに関連するタスクの例を示します。
| 〜へ | 参照先 |
|---|---|
| 最初のアプリケーション インスタンスのコマンド ライン引数を確認する | CommandLineArgs |
プロジェクトの種類別の可用性
| プロジェクトの種類 | 在庫有り |
|---|---|
| Windows フォーム アプリケーション | はい |
| クラス ライブラリ | いいえ |
| コンソール アプリケーション | いいえ |
| Windows フォーム コントロール ライブラリ | いいえ |
| Web コントロール ライブラリ | いいえ |
| Windows サービス | いいえ |
| ウェブサイト | いいえ |