Fragen zu einzelnen Funktionen

  • Hallo

    Ich brauche mal etwas hilfe.
    Ich brauche folgende Befehle:

    - Befehl um den Pfad einer Datei ausfindig zu machen

    öhm das andere ist mir grad entfallen ^^
    Kommt später noch.
    Vorerst also nur den einen da oben...

    Danke

    2 Mal editiert, zuletzt von Commander21 (13. Februar 2009 um 11:20)

  • Tut mir leid, aber das was ich suche finde ich da grad net...

    Ich brauch folgendes:
    Zum Beispiel auf "C:\Programme\xyz" ist eine Datei die "abc.exe" heißt.
    Der Pfad dahin ist dann natürlich: "C:\Programme\xyz\abc.exe"

    So, nun muss ich wissen, wie ich autoit dazu bringe, mir den Pfad zu dieser Datei anzuzigen, wenn ich in einer inputbox "abc.exe" eingebe.

    Auch wenn diese Datei woanders liegt.
    Mehr brauch ich im moment eigl. nicht ^^

  • So, neue Frage, das mit dem pfad hat sich nun mehr oder weniger geklärt ^^

    So, also ich will für das letzte programm das ich gemacht hab, eine Art Installations-GUI machen.
    Im moment fehlen nur noch ein paar sachen, die aber mit diesem theame nix zu tun haben...
    Soll heise: Skript ist nicht ganz vollständig...

    Also es sollte eigl. ganz einfach funzen:
    - Es öffnetsich ein GUI.
    - Dann gibt man in einem Input den Pfad ein, wo es installiert werden soll.
    - Dann kann man später noch paar sachen einstellen...
    - Wenn man auf "Installieren" klickt, soll der pfad [ $ph ( $pfad )] eingelesen werden, und es soll dort der ordner erstellt werden.
    - Danach soll die der aktuelle pfad des skripts ( $dir ) ermittelt werden (also vom Installations-Script), dass ist dann der quellpfad.

    Mein Problem ist nun, es wird zwar der ordner erstelllt, aber es wird nichts da rein kopiert...

    Hier mal der code:

    Spoiler anzeigen
    [autoit]

    Local $Install, $Ch1, $Ch2, $Exit, $msg

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

    GUICreate ("Install", 350, 210)
    Opt ("GUICoordMode", 1)
    $dir = @ScriptDir

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

    $pfad = GUICtrlCreateInput ("InstallPfad", 10, 30, 330)
    $Install = GUICtrlCreateButton ("Installieren", 10, 60, 100)
    $Ch1 = GUICtrlCreateCheckbox ("Verknüpfung auf Desktop erstellen.", 10, 100, 200)
    $Ch2 = GUICtrlCreateCheckbox ("Programm starten nach Fertigstellung.", 10, 130, 200)
    GUICtrlCreateLabel ("Bitte Installationspfad eingeben.", 10, 8, 300)
    $Exit = GUICtrlCreateButton ("Exit", 10, 170, 50)

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

    GUISetState ()
    While 1
    $msg = GUIGetMsg ()
    Select
    Case $msg = $install
    $ph = GUICtrlRead ($pfad, 3)
    DirCreate ($ph)
    Sleep (3000)
    DirCopy ($dir, $ph)
    Case $msg = $Exit
    Exit
    EndSelect
    WEnd

    [/autoit]

    Vllt findet ja iner hier den fehler ^^

  • Hast du es mal mit $dir = @scripdir & "\" probiert? Ansonsten empfehle ich dir ein sleep in die while schleife zu nehmen.

  • @ Oger-Lord:
    Habs mal probiert, hatte leider auch nicht geklappt.

    @ BugFix:
    Habs mit $ph = GUICtrlRead ($pfad, 0) versucht. Leider keine veränderung.
    Und wie setze ich denn das FileSelectFolder() ein?

  • Hab ich, aber wenn ich mir das so durchlese, finde ich erlich gesagt keine gemeinsamkeit zu dem was ich eigl. machen will.

    Meine Frage war ja, warum dieser Ordner nicht in den anderen kopiert wird.
    Hab auch schon nen Test gemacht ob alles stimmt, hab also aus:

    [autoit]

    $ph = GUICtrlRead ($pfad, 3)
    DirCreate ($ph)
    Sleep (3000)
    DirCopy ($dir, $ph)

    [/autoit][autoit]

    $ph = GUICtrlRead ($pfad, 3)
    DirCreate ($ph)
    Sleep (3000)
    Send ($dir & "in" & $ph)

    [/autoit]

    Gemacht. Raus kam, wie erwartet: "C:\ToDo in C:\neu"
    Also als InstallPfad hab ich eben "C:\neu" gemacht und das Quellverzeichniss war "C:\ToDo".

    Also es stimmt zwar alles, aber der "ToDo" Ordner wird trotzdem nicht in "Neu" kopiert -.-