Ausführen ohne Button?

  • Hi,

    bin neu hier im Forum und hab da mal eine Frage.
    Also, ich weiß nicht, wie ich das richtig beschreiben soll, aber ich versuchs mal:
    Ich hab ein Button mit dem Namen "Start" der ein externes Programm ausführen soll.
    Hier ein Ausschnitt:

    [autoit]

    If GUICtrlRead($server) = 'blubb' Then
    $pid = Run(@ScriptDir & '\xyz.exe')

    [/autoit]

    Wenn in der TextBox nun z.B. "blubb" steht und ich dann auf den Start-Button klicke startet xyz.exe.
    So, aber wie kann ich diesen Verlauf ohne einen Button machen?
    Ich meine, dass wenn man dann auf meine blubb.au3 oder blubb.exe doppelklickt, soll er gleich xyz.exe starten ohne davor auf den Button zu klicken...geht sowas?

    3 Mal editiert, zuletzt von Cracky (20. Dezember 2009 um 17:00)

  • Sowas hier?

    Spoiler anzeigen
    [autoit]

    GUICreate("",240,70)
    $Textbox = GUICtrlCreateInput("",20,20,200,25)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case -3
    Exit
    Case $Textbox
    MsgBox(0,"","Du hast '"&GUICtrlRead($Textbox)& "' in die Inputbox eingegeben")
    EndSwitch
    WEnd

    [/autoit]
    • Offizieller Beitrag
    Zitat

    Wenn in der TextBox nun z.B. "blubb" steht und ich dann auf den Start-Button klicke startet xyz.exe.
    So, aber wie kann ich diesen Verlauf ohne einen Button machen?
    Ich meine, dass wenn man dann auf meine blubb.au3 oder blubb.exe doppelklickt, soll er gleich xyz.exe starten ohne davor auf den Button zu klicken...geht sowas?

    Warum fragst du überhaupt die TextBox ab?
    Lösung 1. Post über mir.

  • Hä? So?

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $hwnd = GUICreate("Secret Starter", 420, 420)
    GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")
    $edit = GUICtrlCreateEdit("", 10, 10, 400, 400)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Do
    Sleep(10)
    Until GUIGetMsg() = -3

    [/autoit] [autoit][/autoit] [autoit]

    Func MY_WM_COMMAND($hwnd, $Msg, $wParam, $lParam)
    $nNotifyCode = BitShift($wParam, 16)
    $nID = BitAND($wParam, 0x0000FFFF)
    $hCtrl = $lParam
    If $nID = $edit And $nNotifyCode = 768 Then
    ConsoleWrite($nNotifyCode & @CR)
    If GUICtrlRead($edit) = "blubb" Then Run("calc")
    If GUICtrlRead($edit) = "hallo" Then Run("notepad")
    EndIf
    EndFunc ;==>MY_WM_COMMAND

    [/autoit]
  • Ja, stimmt m-obi..hab ich mir nach dem Post dann auch gedacht..
    Keine Ahnung wieso ich nicht gleich draufgekommen bin xD

    Und Raupi, das mit TextBox war falsch, sry..meinte ComboBox.
    In der ComboBox kann man zwischen 3 verschiedenen Sachen auswählen und nur wenn da was bestimmtest steht, soll auch das bestimmte Programm ausgeführt werden..aber egal klappt jetzt alles wie ichs wollte.

    Danke euch allen^^

    Edit: Ähm hab da noch eine Frage zu einem Code..
    Weiß vielleicht einer was '0 /4 0 0' bedeuten soll?

    [autoit]

    If GUICtrlRead($server) = 'ECSRO' Then
    $pid = Run(@ScriptDir & '\sro_client.exe ' & '0 /4 0 0')
    EndIf

    [/autoit]

    Das ist ein Ausschnitt aus einem Loader für Silkroad (Privatserver ECSRO).
    Wenn man dann auf den Command Button klickt, startet der Server "ECSRO" sofort, ohne dass man im Client zuerst einen Server aussuchen und dann auf Start klicken muss.

    Ich glaub '0 /4 0 0' hat was mit dem Serverstart zu tun, aber ich möchte sowas in Visual Basic benutzen, nur leider weiß ich nicht wie ich den Code umsetzen soll..aber da das nur ein autoit-forum ist, mag ich bloß wissen was '0 /4 0 0' bedeutet^^

    Link zum Loader (Elitepvpers)
    Klick

    Oder Direktdownload
    Klick

    6 Mal editiert, zuletzt von Cracky (20. Dezember 2009 um 16:57)

  • Es ist zwar ein AutoIt-Forum, aber weißt du vielleicht trotzdem wie ich das in VB einbinden kann?

  • An unsere türk. Landsleute (hoffe doch, dass ist türk. 8| ?( ). Was heißt das auf deutsch? Hab das mit Google gefunden.

    Code
    Command Line Kodlarımız
    -0 /4 0 0 ECSRO İçin
    -0 /4 1 0 ECSRO Fembria İçin
    -0 /4 2 0 ECSRO Vip İçin
  • Hmm..könntest du vllt den Link posten oder ihn mir per PM schicken?

    Vielleicht lässt sich ja was mit google übersetzen^^

    Edit: Hab grad eben "Command Line Kodlarımız" in Google eingeben, da kam eine Seite mit einem Loader, aber der wurde auch mit AutoIt gemacht..
    Google: ECSRO Fembria İçin -> ECSRO für fembria..also der 2. Server, Fembria.
    Aber ich weiß nicht wie ich diese 0 /4 0 0 in VB schreiben soll oder, sind es überhaupt "Parameter" ?! wenn ja könnt ich ja Google danach fragen

    Einmal editiert, zuletzt von Cracky (22. Dezember 2009 um 11:49)