Automatische Netzwerkfreigabe für USB Laufwerke

  • Nabend,


    ich war heute bei einem Bekannten, der hatte folgendes Problem:
    Er hat als OS Vista Home installiert und nutzt MS Virtual PC 2007 mit einem WinXP. Nun wollte er gerne auf seine Festplatten und USB Laufwerke (in seinem Fall ein Stick) zugreifen, was aber immer im Gastsystem mit einer Fehlermeldung quitiert wurde und mit dem Absturz des Exploer Prozesses. Nun habe ich mir gedacht, mache ich das nicht über das interne Tool von Virtual PC sondern gebe die Laufwerke auf dem Vista System frei und mappe sie mir dann im virtuellen System. Und da kommt das eigentliche Problem, der USB Stick muss ja immer wirder eine Freigabe erhalten wenn er rein gestöpselt wird. Nun der Auftritt von Autoit (Hinweis für pee, ich habe es klein geschrieben ;) ), ich habe das dem USB Stick einen Volumenamen verpasst und ein Skript gepastelt welches immer wieder schaut ob der Stick eingestöpselt ist oder nicht, wenn er ihn das erste mal erkennt gibt er ihn frei, wird er entfernt, wird auch die Freigabe entfernt. So kann mein lieber Bekannter auch über das Netzwerk immer auf seinen USB Stick zugreifen ohne jedes mal diesen per Hand eine Freigabe zu geben.


    Das einzige was zum Skript zu sagen ist, der Stick muss einen Volumenamen haben, und es gibt zwei Parameter bzw. drei, ruft es einfach mal mit -h auf wenn es kompeliert ist.


    Mfg
    Jens (McPoldy)


    Twitter: jkroeger


    Denn die Dinge, die wir erst lernen müssen, bevor wir sie tun, lernen wir beim Tun.(Aristoteles)

  • Hallo McPoldy,


    das sieht echt nett aus. Ich habe mal eine Frage zum Verständnis wegen AdLibEnable.
    In dem Script läßt Du alle 5 Sekunden die Funktion über AdLibEnable ausführen. In der Hauptschleife hast Du dann garnichts stehen.
    Ich hätte jetzt völlig unbedarft auf Adlibenable verzichtet und nur in der Hauptschleife die Testfunktion aufgerufen.
    Sollte bei gleichem Zeitfenster (5Sek in Adlibenable, Sleep (5000) in der Schleife) nicht dasselbe bei rauskommen?


    Also, gibt es einen speziellen Grund für Adlibenable?


    Danke :)


    TrueMu

  • Als ich das Skript geschrieben habe, hatte ich bestimmt nen guten Grund dafür, aber jetzt fällt mir keiner ein :D.

    Mfg
    Jens (McPoldy)


    Twitter: jkroeger


    Denn die Dinge, die wir erst lernen müssen, bevor wir sie tun, lernen wir beim Tun.(Aristoteles)

    • Offizieller Beitrag

    Hi,


    es ist aber definitv ein Unterschied.


    Zur Erklärung:


    Adlib wird wirklich alle 5 Sek aufgerufen. Sollte die Funktion die du aufrufst länger brauchen als 5 Sekunden, so kommt die Funktion nie zum Ende.
    Wenn du einen Sleep einbaust, dann wird deine Funktion ausgeführt und 5 Sek gewartet.


    1. 5 Sekunden
    2. 5 Sekunden + Durchlaufzeit der Funktion.


    Mega

    • Offizieller Beitrag

    Hallo


    Wen du den gleichen Sleep effekt bei AdlibEnable haben willst (kann ja mal sein :P) muss die Funktion ca so aussehen:
    AdlibEnable("_test",5000)
    Func _test()
    AdlibDisable()
    ;deine funktion....
    Sleep(10000);test, wartet 10 sekunden
    AdlibEnable("_test","5000)
    Endfunc


    Hab es jetzt mal im Firefox geschrieben, sollte so aber stimmen ;)


    Mfg spider

  • @Mega stimmt wusste doch das ich mir irgendetwas dabei gedacht hab, bin heute nicht so auf der Höhe :(

    Mfg
    Jens (McPoldy)


    Twitter: jkroeger


    Denn die Dinge, die wir erst lernen müssen, bevor wir sie tun, lernen wir beim Tun.(Aristoteles)