thedarklord
Goto Top

Beim Einstecken einer PCMCIA Karte automatisch ein Programm starten

Hallo face-smile

Mein Problem habe ich in der Überschrift schon formuliert!
Ob der richtige Bereich gewählt ist, weiss ich noch nicht wirklich ^^

Ich nutze "USBDLM", um bestimmte Laufwerke aus der "Hardware sicher entfernen"-Liste zu entfernen (die beiden Laufwerke meines UMTS-Dongles).
Der Service bietet auch eine "Autostart-Funktion beim einstecken eines USB-Gerätes, aber die PCMCIA-Karte ist nicht unter HKLM-System-CurrentControlSet-Enum-USB sondern ...ENUM-PCI abgelegt, damit kann ich also die Autostart-Funktion von "USBDLM" nicht nutzen, da dieses praktisch nur die USB-Geräte überwacht. PCMCIA ist zwar meines erachtens hardwareseitig auch über USB angeschlossen, aber läuft systemseitig als PCI-Gerät und nicht als USB-Gerät.
Hat jemand eine Idee, wie ich das für eine PCMCIA-Karte realisieren kann?

Ich habe die windowseigene Autostartgeschichte beim CD einlegen oder USB-Gerät anschliessen deaktiviert, also CDs werden nicht automatisch gestartet. Ich möchte aber, dass - wenn ich die PCMCIA-Karte einstecke, nach dem Laden der Karte auch gleich noch ein Programm gestartet wird.
Kennt jemand vielleicht einen Service wie USBDLM, nur halt für PCMCIA? Ich könnte ggf. ne Batch schreiben, die alle 5 Sekunden prüft, ob die Karte eingesteckt ist, aber das ist mir VIEL zu resourcen-hunrig...

Ich weiss absolut nicht mehr weiter, bitte helft mir face-smile

Mein System ist ein HP nx7300 mit XP Pro (SP2)

LG
Dark

Content-Key: 132522

Url: https://administrator.de/contentid/132522

Printed on: April 20, 2024 at 04:04 o'clock

Member: uwesieber
uwesieber Dec 31, 2009 at 14:17:51 (UTC)
Goto Top
USB ist bei USBDLM nur Default, es kann auch jedes andere Laufwerk behandeln. Ab V4.4 reicht eine Geräte-ID um den Standard-Bustype USB "zu überstimmen".
Einfach ListUsbDrives_To_Notepad starten und die Geräte-ID des PCMCIA-Laufwerks kopieren.

Für den Laufwerksbuchstaben dann etwa so:

[DriveLetters10]
DeviceID=PCI\VEN_1217&DEV_7135
Letter=P

Für den Autostart etwa so:

[OnArrival90]
DeviceID=PCI\VEN_1217&DEV_7135
open=%ProgramFiles%\blabla\blabla.exe


PCMCIA ist übrigens nicht über USB angebunden.


Gruß Uwe
Member: TheDarkLord
TheDarkLord Dec 31, 2009 at 14:36:21 (UTC)
Goto Top
Hallo Uwe, danke für die schnelle Antwort face-smile

Ah ok, ich meine bei PCMCIA irgendetwas mit USB2.0 Geschwindigkeit gelesen zu haben, glaube bei so ner PCMCIA SSD - habe wohl fälschlicherweise angenommen, dass der Anschluss auch über USB-Hub erfolgt! Danke für die Aufklärung.

Also, ich hab die Karte gerade mal eingesteckt, die ID ist "PCI\VEN_104C&DEV_8039&SUBSYS_30A2103C&REV_00\4&2EC23395&0&30F0"
Ich werde es mal mit PCI\VEN_104C&DEV_8039 probieren, aber in der Datenträgerverwaltung taucht sie nicht auf. Es ist eine DVB-T Karte, die nicht als Datenträger eingebunden wird. Vielleicht kann USBDLM dennoch einen Autostart damit machen, aber ich bin mir da nicht sicher - ist ja kein Laufwerk in dem Sinne.

Ich melde mich, wenn ich Erfolg oder Misserfolg hatte face-smile

Gruß Dark
Member: uwesieber
uwesieber Dec 31, 2009 at 14:44:27 (UTC)
Goto Top
Achso, kein Laufwerk... Dann gehts mit USBDLM nicht. Muß ich mal einbauen...


Gruß Uwe
Member: TheDarkLord
TheDarkLord Dec 31, 2009 at 15:10:25 (UTC)
Goto Top
Oh das ist von Dir? SUUUUUPER Programm face-smile

Ja das wäre natürlich klasse, wenn man die Möglichkeit hätte, auch für nicht-Laufwerk-PCI oder -USB Geräte die Möglichkeit hätte, sie mit USBDLM zu bearbeiten face-smile
Ging übrigens nicht, aber das hast Du ja selbst schon mit "muss ich mal einbauen" gesagt!

Wenn ich Dich gerade "an der Strippe" habe:
Ist das hier so richtig in die INI eingetragen?
[DriveLetters10]
DeviceID1=USB\VID_12D1&PID_1003&MI_02
Letter=G

[DriveLetters20]
DeviceID1=USB\VID_12D1&PID_1003&MI_03
Letter=H

[DriveLetters]
Letter1=I
Letter2=J
Letter3=K
Letter4=L
Letter5=M
Letter6=N
Letter7=O
Letter8=P
Letter9=Q
Letter10=R
Letter11=S
Letter12=T
Letter13=U

;here you can define drive letter that shall never be used for new local drives
;configure here your network and subst drives here but no local drives!
[NetworkLetters]
Letter1=Z
Letter2=Y
Letter3=X
Letter4=W
Letter5=V

[HideFromSafelyRemoveHardware]
DeviceID1=USB\VID_12D1&PID_1003&MI_02
DeviceID2=USB\VID_12D1&PID_1003&MI_03

Ich wollte damit erreichen, dass "G" und "H" für die beiden USB-Geräte "reserviert" sind und alle anderen Geräte einen weiter folgenden Buchstaben erhalten.
Sowas wie "alle anderen Buchstaben benutzen" hab ich nicht in der Hilfe gefunden, deshalb hab ich das jetzt "manuell" eingetragen ^^
Gehe ich also richtig in der Annahme, dass die beiden Geräte - wenn eingesteckt, die Buchstaben "G" und "H" haben und wenn ich sie nicht eingesteckt habe und ein unbekanntes USB-Gerät einstecke, "G" und "H" NICHT zugewiesen wird, sondern es bei "I" los geht?

LG Dark


PS: Zur Erklärung, diese beiden Geräte sind mein UMTS-Dongle. Wenn ich das einstecke, erscheinten anfangs immer zwei Laufwerke im Arbeitsplatz und bei "Hardware sicher entfernen", dass war auch der Grund für mich, dein erstklassiges Tool einzusetzen, damit habe ich die beiden "Laufwerke" aus der Entfernen-Liste entfernt und per Registrierungseintrag noch aus dem Arbeitsplatz ausgeblendet.
Einmal ist es mir dann passiert, dass ich das Dongle gerade nicht dran hatte und ein USB-Stick nicht zu sehen war, trotz dass ich ihn eingesteckt hatte.
In der Datenträgerverwaltung habe ich dann gesehen, dass er "G" zugewiesen bekommen hat und das will ich mit oben genannten Einträgen verhinden.
Member: uwesieber
uwesieber Dec 31, 2009 at 15:26:25 (UTC)
Goto Top
Ja, die INI sieht gut aus und es funktioniert genau wie beschrieben.

Die Kurzfassung für den Abschitt DriveLetters wäre
Letters=I-Z
und für NetworkLetters
Letters=Z-V
wobei bei letzerem die Reihenfolge der Buchstaben egal ist.


Gruß Uwe
Member: TheDarkLord
TheDarkLord Dec 31, 2009 at 15:30:48 (UTC)
Goto Top
Ah hundertprozentig, das meinte ich, so ist die INI nicht so riesig face-smile
Ich erinnere mich jetzt auch, diese "Kurzfassung" in der Hilfe irgendwo gelesen zu haben - hatte ich wohl vergessen -.-

Danke für die Hilfe!!!

Falls Du das irgendwann mal eingebaut hast mit den nicht-Laufwerk-PCMCIA-Karten, dann schreib mir doch bitte eine PM, damit ich mir gleich die neue Version installiere ^^


Beste Grüße und einen Guten Rutsch
Dark


@ Topic:
Falls irgendwer noch eine Übergangslösung hat für das eigentliche Problem, dann bitte natürlich schreiben!
Member: TheDarkLord
TheDarkLord Dec 31, 2009 at 15:35:08 (UTC)
Goto Top
Oh eine Frage fällt mir noch ein zu USBDLM:

Ich nutze den IFS-Treiber für eine externe EXT3-Platte, die immer auf I eingebunden wird, habe ich mit dem IFS-Tool zugewiesen.
Wenn ich nun in der INI nicht I-U sondern J-U eingebe, bleibt dann die Platte auf I oder wird dann J genommen, weil I für die Zuweisung "deaktiviert" ist?
Alternativ: Kann ich die EXT3-Platte auch fest zuweisen, trotz der Zuweisungsmöglichkeit des Treibers selber?

Gruß Dark


Nachtrag:
Habe es gerade mal getestet, und die Zuweisung von J-U gemacht.
Die EXT3-Platte ist dennoch auf I und die USBDLM-Auslesung zeigt auch keinen Laufwerksbuchstaben an.
Die Platte wird zwar "erkannt" und die ganzen Infos stehen da, aber der zugeordnete Laufwerksbuchstabe wird wohl nicht ausgelesen, da es über den IFS-Treiber zugewiesen ist.
Für meine Zwecke optimal, über den IFS-Treiber weise ich der EXT3-Platte einen festen Buchstaben zu und in der USBDLM INI lasse ich diesen einfach weg, so wird der auch nur von der Platte genutzt und sonst nicht.
Aber vielleicht gibt Dir das ja noch einen Denkanstoß für spätere Programm-Updates, IFS-Treiber mit einzubinden oder sowas ^^
Member: uwesieber
uwesieber Dec 31, 2009 at 15:52:10 (UTC)
Goto Top
Solche Treiber stellen meist keine vollständig implementierten Volumes zur Verfügung - da kommt dann auch keine Benachrichtigung auf die USBDLM reagieren könnte.
Und falls doch, brauchts einen speziellen Abschnitt mit dem richtigen BusType - typischerweise SCSI oder unknown.

Mit J-U wird I für die Ext3-Platte frei gehalten - macht Sinn.


Gruß Uwe
Member: uwesieber
uwesieber Jan 27, 2010 at 17:52:16 (UTC)
Goto Top
So, geschafft - in der Beta-Version ist das drin.

Win32:
http://www.uwe-sieber.de/files/usbdlm_beta.zip

x64:
http://www.uwe-sieber.de/files/usbdlm_beta_x64.zip


Aus der Hilfe:

Einziges Kriterium ist die Geräte-ID. Hier funktioniert ausschließlich "Geräteinstanzkennung".
Diese findet man im Geräte-Manager:
Das betreffende Gerät mit rechts anklicken -> Eigenschaften, Reiter "Details". Hier ist unter XP schon die "Geräteinstanzkennung" ausgewählt. Dann unten auf die GeräteID klicken und "Strg+C" drücken - das kopiert sie in die Windows Zwischenablage. Ein Kontextmenü mit "Kopieren" gibts erst ab Vista.

XP zeigt den Reiter "Details" nur wenn die Umgebumgsvariable DEVMGR_SHOW_DETAILS auf 1 gesetzt ist.
Diese REG-Datei setzt den Wert:
http://www.uwe-sieber.de/files/devmgr_sho ...
Wirksam wird das nach dem nächsten Login.


Beispiel für das Starten des Taschenrechners beim Anschließen eines bestimmten USB-Gerätes:

[OnDeviceArrival10]
DeviceID1=USB\VID_090C&PID_1000\A740000000000097
open=calc

Das Selbe nach dem Entfernen:

[OnDeviceRemoval10]
DeviceID1=USB\VID_090C&PID_1000\A740000000000097
open=calc


Gruß Uwe
Member: TheDarkLord
TheDarkLord Jan 27, 2010 at 19:37:20 (UTC)
Goto Top
Super, es funktioniert!

Vielen vielen Dank Uwe für das einzigartig tolle Programm!!!

Gruß Dark