My.Application.StartupNextInstance-Ereignis
Aktualisiert: November 2007
Tritt ein, wenn versucht wird, eine Einzelinstanzanwendung zu starten und die Anwendung bereits aktiv ist.
' Usage
Public Sub Me_StartupNextInstance( _
ByVal sender As Object, _
ByVal e As StartupNextInstanceEventArgs _
) Handles Me.StartupNextInstance
End Sub
' Declaration
Public Event StartupNextInstance( _
ByVal sender As Object, _
ByVal e As StartupNextInstanceEventArgs _
)
Parameter
sender
Das Object, das das Ereignis ausgelöst hat.e
Ein StartupEventArgs-Objekt, das die Befehlszeilenargumente der Anwendung enthält.
Hinweise
Eine Einzelinstanzanwendung löst das StartupNextInstance-Ereignis aus, wenn Sie versuchen, die Anwendung neu zu starten und diese bereits aktiv ist. Wenn eine Einzelinstanzanwendung das erste Mal gestartet wird, wird das Startup-Ereignis ausgelöst. Weitere Informationen finden Sie unter My.Application.Startup-Ereignis und unter Gewusst wie: Angeben des Instanziierungsverhaltens für eine Anwendung (Visual Basic).
Dieses Ereignis ist Bestandteil des Visual Basic-Anwendungsmodells. Weitere Informationen finden Sie unter Übersicht über das Visual Basic-Anwendungsmodell.
Dieses Ereignis wird im Hauptthread der Anwendung mit den anderen Benutzeroberflächenereignissen ausgelöst. Dies ermöglicht es dem Ereignishandler, direkt auf die Benutzeroberfläche der Anwendung zuzugreifen. Wenn die Anwendung beim Auslösen dieses Ereignisses gerade ein anderes Benutzeroberflächenereignis behandelt, kann das Ereignis jedoch erst verarbeitet werden, wenn der andere Ereignishandler beendet wurde oder die My.Application.DoEvents-Methode aufruft.
Hinweis: |
---|
Das StartupNextInstance-Ereignis wird nur in Einzelinstanzanwendungen ausgelöst. Um Einzelinstanzverhalten für die Anwendung zu aktivieren, müssen Sie im Projekt-Designer das Kontrollkästchen Einzelinstanzanwendung erstellen aktivieren. Weitere Informationen finden Sie unter Gewusst wie: Angeben des Instanziierungsverhaltens für eine Anwendung (Visual Basic). |
Sie müssen die CommandLine-Eigenschaft des e-Parameters verwenden, um auf die Argumente für anschließende Versuche zum Starten einer Einzelinstanzanwendung zuzugreifen. Die My.Application.CommandLineArgs-Eigenschaft stellt die Argumente bereit, mit denen die erste Instanz einer Einzelinstanzanwendung gestartet wird.
Der Code für den StartupNextInstance-Ereignishandler wird in der Datei ApplicationEvents.vb gespeichert, die standardmäßig ausgeblendet ist.
So öffnen Sie das Code-Editor-Fenster für Anwendungsereignisse
Wählen Sie im Projektmappen-Explorer ein Projekt aus, und klicken Sie im Menü Projekt auf Eigenschaften.
Klicken Sie auf die Registerkarte Anwendung.
Klicken Sie auf die Schaltfläche Anwendungsereignisse anzeigen, um den Code-Editor zu öffnen.
Weitere Informationen finden Sie unter Gewusst wie: Behandeln von Anwendungsereignissen (Visual Basic).
Aufgaben
In der folgenden Tabelle werden Beispiele für Aufgaben mit dem My.Application.StartupNextInstance-Ereignis aufgeführt.
Zweck |
Weitere Informationen finden Sie unter |
---|---|
Verwenden der vom Visual Basic-Anwendungsmodell bereitgestellten Ereignisse zum Ausführen von Code |
Gewusst wie: Ausführen von Code beim Starten oder Beenden einer Anwendung |
Überprüfen der Befehlszeilenargumente der ersten Anwendungsinstanz |
Beispiel
In diesem Beispiel wird der e-Parameter des StartupNextInstance-Ereignishandlers verwendet, um die Befehlszeilenargumente der Anwendung zu überprüfen. Wenn ein Argument gefunden wird, das mit /input= beginnt, wird der Rest dieses Arguments angezeigt.
Private Sub MyApplication_StartupNextInstance( _
ByVal sender As Object, _
ByVal 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
Sie müssen den Code im Code-Editor-Fenster für Anwendungsereignisse eingeben. Um dieses Fenster zu öffnen, befolgen Sie die Anweisungen im Abschnitt Hinweise dieses Themas. Weitere Informationen finden Sie unter Gewusst wie: Behandeln von Anwendungsereignissen (Visual Basic).
Anforderungen
Namespace:Microsoft.VisualBasic.ApplicationServices
Klasse:WindowsFormsApplicationBase
**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)
Verfügbarkeit nach Projekttyp
Projekttyp |
Verfügbar |
---|---|
Windows-Anwendung |
Ja |
Klassenbibliothek |
Nein |
Konsolenanwendung |
Nein |
Windows-Steuerelementbibliothek |
Nein |
Web-Steuerelementbibliothek |
Nein |
Windows-Dienst |
Nein |
Website |
Nein |
Berechtigungen
Es sind keine Berechtigungen erforderlich.
Siehe auch
Aufgaben
Gewusst wie: Behandeln von Anwendungsereignissen (Visual Basic)
Gewusst wie: Angeben des Instanziierungsverhaltens für eine Anwendung (Visual Basic)
Gewusst wie: Angeben des Instanziierungsverhaltens für eine Anwendung (Visual Basic)
Konzepte
Übersicht über das Visual Basic-Anwendungsmodell
Referenz
My.Application.Startup-Ereignis