![]() |
Beim Verbinden eines Usb geräts aktion starten
Hallo,
mir geht es hier gar nicht so um Delphi sondern ich würde gerne wissen, ob es möglich ist, von Windows aus ein Skript oder meinentwegen auch ein Programm zu starten, sobald zb. ein bestimmtes Gerät, welches ich mit Bezeichner definiere (externe FP), um dann eine Aktion zu starten (Backup). Also hat Windows eine Fkt. dafür? Oder muss ich Programm schreiben, was ständig läuft und überprüft ob ein Gerät angeschlossen wurde? Hoffe mein Problem wurde verstanden. :D Gruß Dt2158 Edit: meine grausige Rechtschreibung schnell zurecht gerückt ;) |
Re: Beim Verbinden eines Usb geräts aktion starten
Geht das nun oder gar nicht?
|
Re: Beim Verbinden eines Usb geräts aktion starten
Zitat:
Lass denen die das Wissen einfach die Zeit erst mal wieder hier rein zu gucken und sich dann eine Antwort zu überlegen. |
Re: Beim Verbinden eines Usb geräts aktion starten
Gibst du den Mitglieder, die da helfen könnten auch noch die Chance das Posting zu sehen und zu antworten? Dein erstes Posting war gerade mal zwei Stunden alt. Bitte frag das nächste mal erst wieder nach 24 Stunden nach, wie es auch in den Forenregeln steht.
OK, doppelt hält besser. ;) |
Re: Beim Verbinden eines Usb geräts aktion starten
Also so schwer ist das auch nicht.
Wie könnten manche Programme auf jeden beliebigen neuen Device reagieren, ohne die ganze Prozessorlast auf das Programm zu ziehen? Man führ zu dem Zeitpunkt eine Funktion/Prozedur aus. Dafür braucht man einen Sender. Da man aber dass nicht selber ist (wäre ja dumm), kann es nur etwas anderes sein. Bloß wass wohl? ICQ??? IE??? Delphi??? :gruebel: GANZ EINFACH!!! Windows! Und wie sieht wohl eine Fenster-Message aus? Ich würde glatt behaupten mit WM_ ! Aber warum??? :gruebel: WM steht einfach für WindowMessage. So, aber wo steht jetzt eine Liste mit diesen Nachichtentexten??? Spätestens im Internet gibt es die. Aber die gibt es sogar schon viel näher, auf DEINER (auch auf meiner und von anderen Programmierern :wink: :stupid: :zwinker: ) Festplatte! Da es ja von Windows kommt würd ich glatt behaupten in der Win32 API Hilfe. Dann gehst du einfach auf Index und gibst WM_ ein. Und schon bist du bei allen Messages. Dann durchsuchen, die nach sowas klingt. Allerdings sach ich es mal, welche es ist, damit du nicht lannge suchen musst (was ich übrigens nicht lange musste :zwinker: ): WM_DEVICECHANGE. :dp: |
Re: Beim Verbinden eines Usb geräts aktion starten
Hallo,
das habe ich eben auch grad recherchiert, aber ich dachte vllt es gibt eine einfache Möglichkeit Windows beim anstöpseln einer externen Festplatte ein Aktion (Skript (vbs/wsh)) ausführen zu lassen. Wm_messages möchte ich da nicht bemühen. Soll das heißen ich komme nun nicht drum rum, ein extra immerlaufendes Programm zu schreiben was die Funktion übernimmt!? |
Re: Beim Verbinden eines Usb geräts aktion starten
genau so ist es. Allerdings dürfte dein Programm dann nicht all zu viel Ressourcen benötigen wenn du nur auf die Message wartest und dann ein Programm startest. Bei Windows ist meines Wissens nach kein solches Programm dabei.
|
Re: Beim Verbinden eines Usb geräts aktion starten
So würde ich es nicht sagen.
Es gibt so weit ich weiß ind VBS ja auch Funktionen. Vielleicht kriegst du damit ja auch WMs abgefangen. Den Code für Delphi gibt es auf jeden fall hier in der DP. |
Re: Beim Verbinden eines Usb geräts aktion starten
aber damit das vbs läuft muss es auch gestartet sein.
|
Re: Beim Verbinden eines Usb geräts aktion starten
Die Stichworte dürfte Autorun V2 und Autoplay sein. Microsoft versteht darunter etwas anderes als eine Handvoll Softwarehersteller die Utilities mit diesem oder ähnlichem Namen verticken... Wir hatten hier schonmal einen Thread um das Thema, ich find ihn nur gerade nicht.
Im MSDN Magazine stand auch mal ein Artikel dazu, den man über den ![]() |
Re: Beim Verbinden eines Usb geräts aktion starten
wie währe es mit einer while-Schleife (oder ner anderen)? :gruebel:
so ungefähr:
Code:
und i nicht umstellen?
while i=0 do
begin end; |
Re: Beim Verbinden eines Usb geräts aktion starten
Zitat:
:wiejetzt: Ohne Worte... :duck: |
Re: Beim Verbinden eines Usb geräts aktion starten
Ich weiß, dass es Delphi ist und kein VBS. :zwinker: :stupid:
|
Re: Beim Verbinden eines Usb geräts aktion starten
Was ich meinte, ist dass Du da eine Endlosschleife hast, die auch noch 100% CPU-Last zieht, so man sie denn lässt :)
Dass im Do-Abschnitt nix drinsteht, führt nur dazu, dass öfter der While-Abschnitt durchlaufen wird :) Edit: Linksschreibung verrechtert ;) |
Re: Beim Verbinden eines Usb geräts aktion starten
Zitat:
|
Re: Beim Verbinden eines Usb geräts aktion starten
Trotzdem ist Polling nicht mehr zeitgemäß wenn man eventbasiert und damit resourcenschonender arbeiten kann. Siehe Post von mir weiter oben :)
|
Re: Beim Verbinden eines Usb geräts aktion starten
Das mit der Whileschleife war ja ma ne Hammer idee :D :P
also ich habe recherchiert werde gleich nochma nach dem autorun v2 ????? googlen. Ansonsten habe ich jetzt schon fast ein kleines delphi tool feddich was lediglich auf drauf reagiert, ob ein usb gerät angeschlossen wurde oder nicht und dann ein gewünschte programm starten kann, in meinem fall ein vbsskript, dieses prüft, dann welches gerät angeschlossen wird, und wenn das gerät das richtige ist findet das backup statt... |
Re: Beim Verbinden eines Usb geräts aktion starten
Ich bin gerade nicht fit eine Antwort zu schreiben. Die Chemotherapie macht mich ziemlich fertig.
Kick das Topic naechste Woche und ich kann vielleicht antworten. |
Re: Beim Verbinden eines Usb geräts aktion starten
gute Besserung...
werd ich machen |
Re: Beim Verbinden eines Usb geräts aktion starten
Moin!
Ich habe etwas ähnliches hier am laufen. Nur verlasse ich mich ganz einfach auf das Autorun und mache es auf dem selben Weg wie es auch Cds und andere Wechselmedien tun. Einfach Autorun.inf anlegen und dieses sollte bei jeder Konnektion abgearbeitet werden. Ich habe jetzt nicht das ganze Topic gelesen, aber diese Lösung sollte für deine Zwecke reichen (soweit ich das beobachten konnte). Gruß, Max |
Re: Beim Verbinden eines Usb geräts aktion starten
Was USB-Geräte verhalten sich wie CDROM laufwerke und eine einfache autorun.inf genügt? Das wäre ja genial simpel.
Gruß Dt2158 |
Re: Beim Verbinden eines Usb geräts aktion starten
jup...mit ein bisschen suchen hätte man dazu ein ca. 3 monate altes thema gefunden, in dem es ums gleiche ging ;-)
mfg tobi |
Re: Beim Verbinden eines Usb geräts aktion starten
Ich hatte mal eine CD mit autorun.inf aus Versehen ins Hauptverzeichnis einer Festplatte kopiert, sogar das funktionierte. Böse Falle wenn da jemand Prankster spielt :(
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 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