Compartir a través de


Cómo: Habilitar un modo de procesamiento por lotes para aplicaciones de formularios Window Forms

Actualización: noviembre 2007

Este ejemplo utiliza el evento My.Application.Startup para comprobar si la aplicación se ha iniciado con la cadena /batch como un argumento.

Para habilitar un modo de proceso por lotes en una aplicación de formularios Window Forms

  1. Tenga seleccionado un proyecto en el Explorador de soluciones. En el menú Proyecto, haga clic en Propiedades.

  2. En la ficha Aplicación, haga clic en Ver eventos de aplicaciones para abrir el Editor de código.

  3. Cree el método que controla My.Application.Startup (Evento). Para obtener más información, vea Cómo: Controlar eventos de aplicaciones (Visual Basic).

    Private Sub MyApplication_Startup( _
        ByVal sender As Object, _
        ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs _
    ) Handles Me.Startup
    
    End Sub
    
  4. Recorra en iteración los argumentos de la línea de comandos de la aplicación y establezca la propiedad Cancel del objeto e en True si uno de los argumentos es /batch.

    Cuando la propiedad Cancel se establece en True, el formulario de inicio no se inicia.

    For Each s As String In My.Application.CommandLineArgs
        If s.ToLower = "/batch" Then
            ' Stop the start form from loading.
            e.Cancel = True
        End If
    Next
    
  5. Si la propiedad Cancel del objeto e se establece en True, llame a la rutina principal para una operación sin ventanas.

    If e.Cancel Then
        ' Call the main routine for windowless operation.
        Dim c As New BatchApplication
        c.Main()
    End If
    

Ejemplo

Private Sub MyApplication_Startup( _
    ByVal sender As Object, _
    ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs _
) Handles Me.Startup
    For Each s As String In My.Application.CommandLineArgs
        If s.ToLower = "/batch" Then
            ' Stop the start form from loading.
            e.Cancel = True
        End If
    Next
    If e.Cancel Then
        ' Call the main routine for windowless operation.
        Dim c As New BatchApplication
        c.Main()
    End If
End Sub
Class BatchApplication
    Sub Main()
        ' Insert code to run without a graphical user interface.
    End Sub
End Class

Vea también

Tareas

Cómo: Obtener acceso a argumentos de línea de comandos en Visual Basic

Conceptos

Información general sobre el modelo de aplicaciones de Visual Basic

Referencia

My.Application (Objeto)

My.Application.CommandLineArgs (Propiedad)