script geht...exe geht nicht

  • nabend leute hab ein wirklich seltsames problem...
    meine au3 datei funktioniert zurzeit problemlos macht alles so wie ich will also alles bestens..so nun hab ich das als exe compiliert und ich bekomme eine fehlermeldung(siehe anhang)...in meinem script wird eine datei geschrieben..wenn die datei existiert kann die exe auch ausgeführt werden...ich hab ehrlich gesagt keine ahnung wo der fehler liegen könnte...au3 auch schon mehrmals compoliert kommt immer der selbe fehler und wie gesagt au3-script funktioniert problemlos....

  • mhhh...hat sich soeben erledigt....nennen wir den fehler windows...ich hab einfach eine komandozeile um eine zeile eingerückt und dann gings....ich hab den programmcode nicht geändert nur eine zeile eingerückt...nun gut auch egal...windoof halt...aber trotzdem thx@huggy :klatschen:

    /edit
    topic solved

  • Hi,

    hatte auch schon öfters komische Sachen mit kompilierten Scripts, die im Editor liefen. Haben bei mir zwar nicht zum Absturz geführt, aber die GUI's waren nicht so wie sein sollten. Falls du GUI's mit bestimmten Optionen hast, also irgendwelche Systembuttons oder Speuzelle Rahmen, versuche mal zunächst mit den Standardeinstellungen für die Fenster zu arbeiten.

    Ciao und Gruß Rabbit

    o.k, hat sich erledigt

    Einmal editiert, zuletzt von rabbit (28. November 2006 um 22:23)

    • Offizieller Beitrag

    Aaaaaaalso:
    AutoIt ist eine interpretierte Sprache, keine kompilierte. Das ist sie immer, ob als au3-Datei oder als Exe. Als Exe ist der Interpreter mit dem Quelltext verpackt. Daher kann es prinzipbedingt nicht sein, dass Code kompiliert anders funktioniert. Es kann nur sein, dass Pfade usw. nicht mehr stimmen, aber das ist dann der Fehler des Programmierers...

    peethebee

  • mhhh nun gut des kann gut sein nen kleiner tippfehler oder sowas lässt ja dann gleich die welt untergehen^^ (um es mal ein bisschen zu übertreiben^^)
    nun gut jetzt gehts ja :)

    @peethebee:mal wieder was dazugelernt :)
    danke für alle antworten :keks:

  • Hm passt grad zum Thema.

    Hab momentan ein ähnliches Phänomen.
    Hab ein Skript mit einem GUI und darauf mehreren Icons.
    Diese hab ich mit einer Größe von 16x16 angegeben und die werden mir auch entsprechend verkleinert dargestellt.

    Kompiliere ich das Skript nun (o.k. meinetwegen "interpretiere" ;-)) werden mir die Icons nicht mehr verkleinert dargestellt.
    Also die Größe die die Icons einnehmen bleibt auf 16x16 allerdings werden die Icons selbst nicht mehr verkleinert - man sieht also nur noch einen kleinen Ausschnitt des großen Icons.

    Lustigerweise hatte dies mit den alten Compiler-Versionen noch funktioniert und seit der letzten stable-Version hab ich dieses Phänomen.
    Bei der neuen Beta das selbe Phänomen.

    Jemand ne Idee woran das liegen könnte?

    Nochmal Kurzfassung:

    • Icons werden unkompiliert korrekt verkleinert dargestellt.
    • kompiliert werden die Icons nicht korrekt verkleinert dargestellt.

    Hier mal der Ausschnitt aus dem Skript der die Icons erstellt:

    [autoit]

    For $r = 1 To $Files[0] Step 1

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

    If StringRight($Files[$r], 3) = 'exe' Then
    $icon = GUICtrlCreateIcon($Files[$r], 0, $Links, $Oben + 1, 16, 16)
    If $icon = 0 Then
    GUICtrlCreateIcon(@SystemDir & '\shell32.dll', 2, $Links, $Oben + 1, 16, 16)
    EndIf
    Else
    Switch StringRight($Files[$r], 3)
    Case 'msi'
    $icon = GUICtrlCreateIcon(@SystemDir & '\msiexec.exe', 0, $Links, $Oben + 1, 16, 16)
    Case 'bat'
    $icon = GUICtrlCreateIcon(@SystemDir & '\shell32.dll', 71, $Links, $Oben + 1, 16, 16)
    Case 'cmd'
    $icon = GUICtrlCreateIcon(@SystemDir & '\shell32.dll', 71, $Links, $Oben + 1, 16, 16)
    Case 'inf'
    $icon = GUICtrlCreateIcon(@SystemDir & '\shell32.dll', 69, $Links, $Oben + 1, 16, 16)
    Case 'reg'
    $icon = GUICtrlCreateIcon(@WindowsDir & '\regedit.exe', 0, $Links, $Oben + 1, 16, 16)
    Case 'ttf'
    $icon = GUICtrlCreateIcon(@SystemDir & '\shell32.dll', 74, $Links, $Oben + 1, 16, 16)
    EndSwitch
    EndIf

    [/autoit]