Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   C# Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. wird (https://www.delphipraxis.net/75474-erkennen-wenn-wechseldatentraeger-usb-stick-angechl-wird.html)

Markus 19. Aug 2006 20:34


Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. wird
 
Hallo,

ich möchte ein Programm basteln, dass automatisch einen Ordner auf meinem USB-Stick mit einem Ordner auf der Festplatte synchronisiert. Das Sync-Tool hab ich schon, aber wie kann ich es so machen, dass der Vorgang startet, sobald ein Wechseldatenträger eingesteckt wird? Möchte es so machen, dass sich auf dem Stick keine Daten (wie ne autostart.inf) befinden müssen.

Hat da jemand nen Tipp?

cruso 19. Aug 2006 20:56

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Warum nimmst du nicht einfach einen Aktenkoffer? Das müsste eigentlich funktionieren.

Robert Marquardt 20. Aug 2006 05:38

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
WM_DEVICECHANGE abfangen.

himitsu 21. Aug 2006 02:35

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Zitat:

Zitat von Robert Marquardt
WM_DEVICECHANGE abfangen.

Dazu müßte das Tool aber schon laufen ... ich vermute er will dat Programm erst noch starten, wenn er den Stick einsteckt.
Dazu müßte sich aber was auf dem Stick befinden, welches von Windows erkannt und ausgeführt wird, ansonsten (Tool läuft schon) bist'e bei Robert gut aufgehoben :)

Luckie 21. Aug 2006 02:37

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Zitat:

Zitat von himitsu
Zitat:

Zitat von Robert Marquardt
WM_DEVICECHANGE abfangen.

Dazu müßte das Tool aber schon laufen ... ich vermute er will dat Programm erst noch starten, wenn er den Stick einsteckt.

Anders geht es aber nicht.

Robert Marquardt 21. Aug 2006 06:31

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Dazu schreibt man sich eine Tray-Applikation, die man in den Autostart seines Rechners setzt.

Daniel B 21. Aug 2006 07:30

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Wäre es nicht einfacher, wenn man alle 2-300ms abfrägt welche Laufwerke im System sind, also praktisch im Arbeitsplatz, der Stick hat ja einen Namen, oder könnte man sich mit dem WM_DEVICECHANGE den Timer sparen?

MagicAndre1981 21. Aug 2006 07:30

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Warum polling betreiben, wenn man die Nachricht hat? :roll:

JoergZiemer 21. Aug 2006 08:34

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Hallo,

Beim Anschließen des USB-Sticks erstellt Windows einen Eintrag in der Ereignisanzeige.
Mit EVENTTRIGGERS CREATE kann eine Reaktion auf das Eintreten dieses Ereignisses definiert werde (s. Online Hilfe)

viel Erfolg
Jörg

Robert Marquardt 23. Aug 2006 05:35

Re: Erkennen, wenn Wechseldatenträger (USB-Stick) angechl. w
 
Das mit dem Ereignis duerfte nur fuer Windows XP gelten. WM_DEVICECHANGE kriegt man aber schon bei Win 98.
Am besten meine HID-Komponente von http://www.soft-gems.net/HID.php besorgen oder in der JVCL nachsehen.
Dort ist DBT.pas dabei und die originalen Microsoft-Kommentare sind erhalten.
Man bekommt fuer Volumes spezielle WM_DEVICECHANGE-Nachrichten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz