usb laufwerke auslesen und in txt/ini schreiben

  • hallo autoit member

    ich suche den ganzen tag schon nach einen script das mir alle angekoppelten usb geräte erkennt, und derren laufwerke ausliest und dann in eine txt oder ini schreibt.

    das schreiben is nicht das problem das ich habe das bekomm ich schon auf die reihe, aber das auslesen mit laufwerkbuchstabe da komm ich gerade nicht klar mit, entweder schaff ich es das er die laufwerke erkennt, aber dann ohne buchstabe, oder ich schaff es das ich den buchstaben selber eingebe.
    ist aber alles aus anderen scripts zusammengewürfelt deswegen wollte ich hier mal fragen ob ihr mir da weiterhelfen könntet.

    mfg cashmoney

  • *nochmal rauspack*

    mit diesem GUI event kenn ich mich garnich aus... hab da jetzt alles auskommentiert damit er das nich mehr ausgibt, weil das brauch ich nicht.

    jedoch schreibt er nichts in die ini rein wenn ich ihm sag

    [autoit]

    $filedir = @TempDir
    $filename = "\driveletter.ini"
    $filedirname = $filedir & $filename

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

    FileDelete ( $filedirname )
    $file = FileOpen($filedirname, 1)
    FileWrite($file, "[DRIVELETTER]" & @CRLF)
    FileWriteLine($file, $HDD)
    FileClose($file)

    [/autoit]

    also das hab ich einfach unten angehängt!

  • Hi,

    [autoit]


    $filedir = @TempDir
    $filename = "\driveletter.ini"
    $filedirname = $filedir & $filename
    ;$HDD = "Testdrive"
    FileDelete ( $filedirname )
    $file = FileOpen($filedirname, 1)
    FileWrite($file, "[DRIVELETTER]" & @CRLF)
    ;FileWriteLine($file, $HDD)
    FileClose($file)
    ShellExecute ($filedirname)

    [/autoit]

    erzeugt bei mir eine driveletter.ini mit eine Sektion [DRIVELETTER]. Da aus Deiner Beschreibung nicht ersichtlich wird, wo Dein Problem liegt, vermute ich, dass der Part für $HDD fehlt. Damit kann nur Deine Variable ein Problem bereiten.
    Zum Debuggen:

    [autoit]

    $filedir = @TempDir
    $filename = "\driveletter.ini"
    $filedirname = $filedir & $filename
    $HDD = "Testdrive"
    FileDelete ( $filedirname )
    $file = FileOpen($filedirname, 1)
    FileWrite($file, "[DRIVELETTER]" & @CRLF)
    MsgBox (0,"",$HDD)
    FileWriteLine($file, $HDD)
    FileClose($file)
    ShellExecute ($filedirname)

    [/autoit]

    ;-))
    Stefan

    P.S: Da auch wesentliche Teile des Codes fehlen, solltest Du mal ein paar Schnipsel mehr auflegen.....

  • sry für die wenigen informationen^^ habs jetzt aber ganz anders gemacht und siehe, es klappt :D
    trotzdem danke für die hilfe stefan!

    [autoit]


    Global $HDD = DriveGetDrive("REMOVABLE")
    $filedir = @TempDir
    $filename = "\driveletter.ini"
    $filedirname = $filedir & $filename

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

    FileDelete ( $filedirname )
    $file = FileOpen($filedirname, 1)
    FileWrite($file, "[USBDRIVES]" & @CRLF)
    FileWrite($file, "DRIVES=")

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

    For $i = 1 To $HDD[0]
    $lbLW = $HDD[$i]
    ; MsgBox(0, "USB", "HDD = " & $HDD[$i])
    FileWrite($file, ($HDD[$i]))
    FileWrite($file, ";")
    Next

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

    FileClose($file)

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

    Exit

    [/autoit]
  • naja wie gesagt bin anfänger da drin hab jetzt kein anderen befehl dafür gefunden aber danke für den tipp werd ich mal umsetzen