Поделиться через


WindowsFormsApplicationBase.StartupNextInstance Событие

Определение

Происходит при попытке запустить одно экземплярное приложение и приложение уже активно.

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 

Тип события

Примеры

В этом примере используется e параметр обработчика StartupNextInstance событий для проверки аргументов командной строки приложения. Если найден аргумент, который начинается с /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 вызывается только в приложениях с одним экземпляром. Чтобы включить поведение одного экземпляра для приложения, установите флажок "Создать одно экземпляр " в конструкторе проектов.

Чтобы сделать приложение одним экземпляром, сделайте так:

  1. Выбрав проект в обозревателе решений, щелкните "Свойства " в меню "Проект ".
  2. Перейдите на вкладку "Приложение ".
  3. Установите флажок "Сделать приложение одного экземпляра ".|

Свойство параметра необходимо использовать CommandLinee для доступа к аргументам для последующих попыток запуска одно экземпляра приложения. Свойство CommandLineArgs предоставляет аргументы, используемые для запуска первого экземпляра приложения с одним экземпляром.

Код обработчика StartupNextInstance событий хранится в файле ApplicationEvents.vb, который по умолчанию скрыт.

Чтобы получить доступ к окну редактора кода для событий приложения: |1. Выбрав проект в обозревателе решений, щелкните "Свойства " в меню "Проект ".
2. Щелкните вкладку "Приложение ".
3. Нажмите кнопку "Просмотреть события приложения" , чтобы открыть редактор кода.

Дополнительные сведения см. в разделе "Страница приложения", конструктор проектов (Visual Basic)".|

В следующей таблице перечислены примеры задач, связанных с событием My.Application.StartupNextInstance .

Кому Смотри
Проверка аргументов командной строки первого экземпляра приложения CommandLineArgs

Доступность по типу проекта

тип проекта В наличии
Приложение Windows Forms Да
Библиотека классов Нет
Консольное приложение Нет
Библиотека элементов управления Windows Forms Нет
Библиотека веб-элементов управления Нет
Службы Windows Нет
Веб-сайт Нет

Применяется к

См. также раздел