VB - ako spustit odkaz na Exe subor?

Programovacie jazyky, rady, poradňa...
tom18
Amateur
Amateur
Príspevky: 11
Registrovaný: 28 júl 2011, 23:56

VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa tom18 »

je to robene vo Microsoft Visual basic 2010 (jazyk VB)

takze na jednom fore som dostal takyto skript na spustenie odkazu na exe subor

Kód: Vybrať všetko

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        call runAs()
    End Sub

    Sub runAS()
        Dim process As System.Diagnostics.Process = Nothing
        Dim processStartInfo As System.Diagnostics.ProcessStartInfo
        processStartInfo = New System.Diagnostics.ProcessStartInfo()

        processStartInfo.FileName = "notepad.exe" 'program co chces spustit

        If System.Environment.OSVersion.Version.Major >= 6 Then
          ' Run as admin on Windows Vista or higher
         processStartInfo.Verb = "runas"     
        End If
        ' processStartInfo.Arguments = "args" 'arguments
        processStartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
        processStartInfo.UseShellExecute = True

        Try
            process = System.Diagnostics.Process.Start(processStartInfo)
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            If Not (process Is Nothing) Then
                process.Dispose()
            End If
        End Try
    End Sub
problem je v tom ze mi tam pise:

Kód: Vybrať všetko

    Error   1   'Public Sub runAS()' has multiple definitions with identical signatures.
tych tlacitiek v aplikacii je celkom 5 a kazde ma spustat odkaz na iny exe subor vedel by mi niekto pomoct?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa audiotrack »

túto časť kódu tam máš zrejme viackrát:

Kód: Vybrať všetko

Sub runAS()
        Dim process As System.Diagnostics.Process = Nothing
        Dim processStartInfo As System.Diagnostics.ProcessStartInfo
        processStartInfo = New System.Diagnostics.ProcessStartInfo()

        processStartInfo.FileName = "notepad.exe" 'program co chces spustit

        If System.Environment.OSVersion.Version.Major >= 6 Then
          ' Run as admin on Windows Vista or higher
         processStartInfo.Verb = "runas"     
        End If
        ' processStartInfo.Arguments = "args" 'arguments
        processStartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
        processStartInfo.UseShellExecute = True

        Try
            process = System.Diagnostics.Process.Start(processStartInfo)
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            If Not (process Is Nothing) Then
                process.Dispose()
            End If
        End Try
    End Sub
tak to všetko zmaž, nechaj ju iba raz a mierne ju uprav takto:

Kód: Vybrať všetko

Sub runAS(ByVal prg as String)
        Dim process As System.Diagnostics.Process = Nothing
        Dim processStartInfo As System.Diagnostics.ProcessStartInfo
        processStartInfo = New System.Diagnostics.ProcessStartInfo()

        processStartInfo.FileName = prg 'program co chces spustit

        If System.Environment.OSVersion.Version.Major >= 6 Then
          ' Run as admin on Windows Vista or higher
         processStartInfo.Verb = "runas"     
        End If
        ' processStartInfo.Arguments = "args" 'arguments
        processStartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
        processStartInfo.UseShellExecute = True

        Try
            process = System.Diagnostics.Process.Start(processStartInfo)
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Finally
            If Not (process Is Nothing) Then
                process.Dispose()
            End If
        End Try
    End Sub
a potom volanie bude spolu s parametrom, teda

Kód: Vybrať všetko

call runAs("notepad.exe")
pre každý button. S tým, že v zátvorke bude vždy niečo iné, podľa toho čo chceš pustiť
tom18
Amateur
Amateur
Príspevky: 11
Registrovaný: 28 júl 2011, 23:56

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa tom18 »

stale pisu tu chybu len teraz v zatvorke je toto prg

Kód: Vybrať všetko

Error	1	'Public Sub runAS(prg As String)' has multiple definitions with identical signatures.
snazom sa to spustit v debug mode az potom davm robit exe aplikaciu ked to pojde bez chyby
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa audiotrack »

ty máš tú procedúru runAS definovanú viackrát, som ti povedal nech to všetko zmažeš a necháš ju tam iba raz, a to tak upravenú ako som ti poslal
tom18
Amateur
Amateur
Príspevky: 11
Registrovaný: 28 júl 2011, 23:56

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa tom18 »

cize z ostatnych tlacitiek vymazat cely riadok

Kód: Vybrať všetko

Sub runAS
?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa audiotrack »

áno, až po End Sub. Takže nejakých 25 riadkov. A necháš to len raz, ale upravíš ho tak ako som ti písal.
tom18
Amateur
Amateur
Príspevky: 11
Registrovaný: 28 júl 2011, 23:56

Re: VB - ako spustit odkaz na Exe subor?

Príspevok od používateľa tom18 »

boh ti zehnaj vdaka :)))))))))))))))) uz to facha aj druhe tlacitko mi spusta druhu aplikaciu :) este taka otazka nahodou nvs je tazke nastavit ze ked v aplikacii zmenim hodnoty napr

Kód: Vybrať všetko

Godmode=0
na

Kód: Vybrať všetko

Godmode=1
aby sa to prepisalo v prislusnom INI subore? :)
Napísať odpoveď