VBS zu EXE Konvertieren

  • Hay Comiunity!


    Ich hab hier mal mein erstes 'Nützliches' Script Geschireben.

    Es Konvertiert .VBS Dateien in eine .Exe Datei.


    Kritik nehme ich gerne an,


    Ps: Code näturlich in AutoIt :thumbup:


    [autoit]


    Do
    $VBS_Filename = FileOpenDialog("Bitte Script-Datei auswählen","::{20D04FE0-3AEA-1069-A2D8-08002B30309D}","VBS-Datei (*.vbs)")
    If $VBS_Filename = "" Then
    $NewSelectFile = MsgBox(64+4,"VBS2EXE","Keine Datei Ausgewählt. Neue Datei Auswählen?")
    If $NewSelectFile = 7 Then Exit
    EndIf
    Until $VBS_Filename <> ""
    Do
    $EXE_Filename = FileSaveDialog("Bitte Speicherort Wählen","::{20D04FE0-3AEA-1069-A2D8-08002B30309D}","Anwendung (*.exe)")
    If $EXE_Filename = "" Then
    $NewEXESelectFile = MsgBox(64+4,"VBS2EXE","Keine Datei Ausgewählt. Neue Datei Auswählen?")
    If $NewEXESelectFile = 7 Then Exit
    EndIf
    Until $EXE_Filename <> ""

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

    $CompilerDir = "Aut2Exe.exe"
    $Tmp = @TempDir & "\tmpa.au3"
    $Vbs = @TempDir & "\TMP.VBS"
    FileDelete(@TempDir & "\tmpa.au3")
    FileDelete(@TempDir & "\TMP.VBS")
    FileWriteLine(@TempDir & "\tmpa.au3","#NoTrayIcon" & @CRLF)
    FileWrite(@TempDir & "\tmpa.au3",'FileInstall("')
    FileWrite(@TempDir & "\tmpa.au3",$VBS_Filename)
    FileWrite(@TempDir & "\tmpa.au3",'",')
    FileWrite(@TempDir & "\tmpa.au3", '"' & @TempDir & "\TMP.VBS")
    FileWrite(@TempDir & "\tmpa.au3",'",1)' & @CRLF)
    FileWriteLine(@TempDir & "\tmpa.au3","Run(""wscript " & $Vbs & """)")

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

    Run($CompilerDir & " /in " & @TempDir & "\tmpa.au3 /out " & $EXE_Filename )

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Hallo,
    bei VBS und AutoIt muss ich immer an sowas denken

    Spoiler anzeigen


    Zeile 3 :rofl: ...Zeile 24 :rock: und ab Zeile 38 :thumbup:
    Das schöne daran ist, man braucht diese "Scripte" nicht zu "kompilieren" um sie weiterzugeben....eigentlich müsste es einen AU3toVBS-Konverter geben^^

    ciao
    Andy

  • eigentlich ??? Und uneigentlich bist Du schon dabei? ;)

    Ansonsten kann ich nur schreiben: ich weiß zwar nicht wie vbs arbeitet oder so, aber das Script vbs2exe via AutoIt arbeitet einwandfrei.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    • Offizieller Beitrag

    Es Konvertiert .VBS Dateien in eine .Exe Datei.

    Nunja, eine Konvertierung ist es nicht. Dazu müßtest du den Inhalt des Skriptes in AutoIt-Befehle umsetzen.
    Es handelt sich hierbei um den Aufruf der Skriptdatei über eine AutoIt.exe.
    Aber warum rufst du dann die VBS nicht direkt auf und gehst den Umweg über eine exe ?

  • BugFix : Wenn man den Code nicht weitergeben will, macht man bei AutoIt eine .exe, warum also auch nicht bei .vbs?
    @DjDominik: Du solltest prüfen, ob im Dateiname schon .exe steht oder nicht, um es gegebenfalls dazuzuschreiben.

    [autoit]

    $file3 = FileSaveDialog ("Save file", @DesktopDir, "Pictures (*.jpg)", Default, Random(0, 500, 1))
    If StringRight ($file3, 4) <> ".jpg" Then $file3 &= ".jpg"

    [/autoit]


    MfG

    MfG. tobi_girst

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tobi_girst« (Morgen, 25:63)