iniciar proceso sin ruta maximizado! y cerrarlo desde el proyecto

Iniciado por StbanMC, 18 Marzo 2014, 15:59 PM

0 Miembros y 1 Visitante están viendo este tema.

StbanMC

Buen Dia..


tengo un codigo para iniciar un proceso con una ventana sobre poniendola y que cuando se cierre esa  ventana se cierre con el proceso que se inicio.

donde hay una parte donde inicia el proceso sin tener una ruta especifica



Código:
Dim programName As String = "SetUp_v100001.exe"
       System.Diagnostics.Process.Start(Application.StartupPath & "\" & programName)


pero dentro de este codigo no puedo buscar la forma de que inicie
el proceso de forma maximizada

como lo resuelvo??

si les sirve el codigo lo dejo aki

Código:
Public Class SetUp_v101
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       Dim programName As String = "SetUp_v100001.exe"
       System.Diagnostics.Process.Start(Application.StartupPath & "\" & programName)
   End Sub
   Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
       Me.WebBrowser1.AllowWebBrowserDrop = True
   End Sub

   Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
       Label1.Text = DateString
       Label2.Text = TimeOfDay
   End Sub
   Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
       If e.CloseReason = CloseReason.UserClosing Then
           If MsgBox("Realmente desea salir?", MsgBoxStyle.YesNo, "Finalizar SetUp") = MsgBoxResult.Yes Then
               Application.Exit()
               For Each prc As Process In Process.GetProcesses
                   If prc.MainWindowTitle.Contains("Setup_v100001") Then
                       prc.Kill()
                   ElseIf prc.ProcessName = "SetUp_v100001.exe" Then
                       prc.Kill()
                       Me.Close()
                   End If
               Next
           Else
               e.Cancel = True
           End If
       End If
   End Sub
End Class


Eleкtro

#1
Usa la Class 'Process', establece la propiedad 'WindowStyle' (siempre que la ventana del proceso lo permita), y suscríbete al evento 'Exited'.

Ejemplo:

Código (vbnet) [Seleccionar]
Public Class SetUp_v101

    Dim psi As New ProcessStartInfo With
        {
            .FileName = IO.Path.Combine(Application.StartupPath, "SetUp_v100001.exe"),
            .WindowStyle = ProcessWindowStyle.Maximized
        }

    Dim WithEvents p As New Process With
        {
            .StartInfo = psi,
            .EnableRaisingEvents = True
        }

    Private Shadows Sub Load(ByVal sender As Object, ByVal e As EventArgs) _
    Handles MyBase.Load

        Using proc As Process = p
            proc.Start()
            proc.WaitForExit()
        End Using

    End Sub

    Private Shadows Sub FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs) _
    Handles MyBase.FormClosing

        Select Case e.CloseReason

            Case CloseReason.ApplicationExitCall
                ' Esto sucede cuando el usuario cierra el proceso que hemos ejecutado, en la llamada 'Application.Exit()'.

            Case CloseReason.UserClosing

                If AskQuestion() = Windows.Forms.DialogResult.No Then
                    e.Cancel = True

                Else
                    If Not p.HasExited Then
                        p.Kill()
                    End If

                End If

        End Select

    End Sub

    Private Sub p_Exited(sender As Object, e As EventArgs) _
    Handles p.Exited

        Application.Exit()

    End Sub

    Private Function AskQuestion() As DialogResult

        Return MessageBox.Show("Realmente desea salir?", "Finalizar SetUp",
                               MessageBoxButtons.YesNo, MessageBoxIcon.Question)

    End Function

End Class


PD: Las dudas sobre .NET van en el subforo dedicado a .NET

Saludos!








StbanMC

Muchas Gracias

Facilitaste mi vida un mil porciento..


aprendi y compartire mi conocimiento haci como ud's comparten el suyo!

:D :D :D

publique aki porque no me dieron respuesta en .NET

Lecion aprendida