Hardware sicher entfernen

  • Hallo Leute wollte mal fragen ob es über Autoit möglich istzb eine USB Festplatte sicher zu entfernen. Weil ich gebe einem älteren Herrn unterricht in PC Kram zum Beispiel Emails senden usw. Nun will ich ihm aber ein Script machen das die Hardware immer sicher entfernt wenn er es startet damit ihm keine Daten verloren gehen


    mfg killax2x

  • Lohnt es sich dafür überhaupt nen Script (selbst wenn es 1 Zeile ist) zu machen?
    Du kannst ja schon mit 2 klicks die USB-Devices sicher entfernen ^^

  • Windows nervt ja immer, wenn ein USB-Datenspeicher 'einfach so' abgezogen wird.
    Die Frage ist aber eher: Wann ist es zwingend notwendig, den Datenträger vorher vom System abzumelden?
    Und das ist nur dann der Fall, wenn noch mit Schreibvorgängen zu rechnen ist. Bei FAT/FAT32 formatierten Datenträgern (im Normalfall sind alle Sticks damit formatiert) besteht da also keine Notwendigkeit. Ist der Datenträger allerdings NTFS formatiert muß er abgemeldet werden, damit evtl. im Schreibcache liegende Daten noch geschrieben werden können.


    Nachteil wenn man den Datenträger ohne Abmeldung dann ausstöpselt: Die lästige Windowsmeldung.

  • Also ja ich brauche das unbedingt weil der Mann ist schon etwas älter und bekommt das nicht so richtig hin deshalb wollte ich des mit dem script machn

  • ich glaub nicht das das einfach wird...
    unten in der Prozessleiste hats doch so ein Symbol wenn man da draufklickt kann man da auswählen welcher datenträger sicher entfernt werden soll....
    Und woher soll das Progrmam wissen, das jmd. gerade den Stick herauszieht, ich mein Windows braucht da normal immer paar Sekunden bis er die
    Hardware frei zum rausziehen gibt.. wenn dann jmd. etwas aussteckt schafft es windows nicht bis dahin auch kurz alle daten zu sichern etc....


    #edit: hab mich wohl geirrt

  • Hi,


    basierend auf devcon.exe von MS, musst Du noch downloaden, eine Lösung zum Entfernen von allen USB Massenspeichern unter W2K und XP.

    $strrun = @ScriptDir & "\devcon find = WPD USB\VID* >" & @ScriptDir & "\usbdev.txt"
    RunWait (@ComSpec & " /c " & $strrun, @ScriptDir, @SW_HIDE)
    _FileReadToArray (@ScriptDir & "\usbdev.txt", $usbdev)
    FileDelete (@ScriptDir & "\usbdev.txt")
    If IsArray ($usbdev) Then
    For $x = 1 to UBound ($usbdev) - 1
    ;Entferne USB Drives zum sicheren entfernern
    If StringInStr ($usbdev [$x], "USB-Massenspeicher") <> 0 Then
    $crecords = StringSplit ($usbdev [$x], "\")
    RunWait (@ComSpec & " /c " & @ScriptDir & "\devcon remove """ & $crecords [1] & "\" & $crecords [2] & """") ; evtl. noch @SW_Hide
    EndIf
    Next
    EndIf


    Gffs. mit Tooltip oder ähnlichem noch Statusmeldungen absetzen.


    ;-))
    Stefan

  • Siehe: http://www.uwe-sieber.de/drivetools.html#removedrive


    Lässt sich super mit AutoIt nutzen. Habe ich selbst im Einsatz.
    Ob es unter Vista läuft, musst Du testen.

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:


    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"