Auswahlbox mit install Funktion

Danchou

Grünschnabel
Tag auch,

Ich bin rel. unvertraut mit VB und es kann sein, dass VB auch die völlig falsche Variante ist für mein Vorhaben, ich dachte mir ich versuchs einfach mal.
Geplant ist folgendes, eine Auswahlbox in diesem Stil:
http://img81.imageshack.us/img81/2760/selectre5.jpg
Bei der Auswahl der versch. Programme sollen Shell Kommandos übergeben werden, welche die jeweiligen Setups mit speziellen Parametern aufrufen (z.B. beim Acrobat Reader "start /wait %systemdrive%\install\Applications\reader\setup.exe /sAll")
Nun ist meine Frage wie ich das am besten übergebe, mein Editor (MS Visual Basic 2005 Express) kennt die Funktion ShellExecute nicht, welche soweit ich das verstanden habe genau für mein Problem zuständig wäre.
Hoffe ich konnte das Problem verständlich beschreiben, sonst einfach nachhaken^^

Grüsse
 
versuch es mal mit dem Einbinden der Kernel32 api und der dort befindlichen Funktion shellexecute
Code:
<DllImport("kernel32.dll")> Private Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
  (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
  ByVal lpParameters As String, ByVal lpDirectory As String, _
  ByVal nShowCmd As Long) As Long

Grüsse bb
 
Ich hab jetzt in der Mittagspause selber noch ein wenig mit der Shell Funktion rumgebastelt, der Code sieht jetzt folgendermassen aus:
Code:
Dim inhalt As String
Dim Areader As String

        inhalt = "ECHO Programme werden installiert {Enter}"
        Areader = "start /wait {%}systemdrive{%}\install\Applications\reader\setup.exe /sAll {Enter}"

        If reader.Checked Then

            inhalt = inhalt & Areader
        End If

        inhalt = inhalt & "{Enter}Exit"


        Shell("cmd", AppWinStyle.NormalFocus)
        SendKeys.Send(inhalt)

Ich dachte mir das sollte so ja eigentlich funktionieren, das Ergebnis war folgendes:
http://img98.imageshack.us/img98/59/errorzp1.jpg
Könnte mir das jemand vllt. erklären? :)

Die Methode mit der Kernel32 probiere ich gleich aus, danke für den Tipp!
 
Zurück