derwowusste
Goto Top

Suche Skript für WPD bzw MPT-Gerätedeinstallation

Moin Kollegen.

Ich habe versucht, mit devcon.exe alle derzeit installierten MPT-Geräte (z.B. Smartphones) per Skript zu deinstallieren. Leider scheitert devcon, woran das auch immer liegen mag ("No devices were removed").
Kennt jemand eine Alternative, die ich skripten kann? Soll funktionieren auf Windows 8.1 x64.

Content-ID: 242366

Url: https://administrator.de/forum/suche-skript-fuer-wpd-bzw-mpt-geraetedeinstallation-242366.html

Ausgedruckt am: 09.04.2025 um 20:04 Uhr

Gersen
Gersen 01.07.2014 aktualisiert um 13:24:30 Uhr
Goto Top
Hallo,

vielleicht ist aus dem SourceCode von GhostBuster was rauszulesen?

Btw.: MS hat den SourceCode zu DevCon veröffentlicht. Damit kannst Du vielleicht genauer prüfen, woran Deine Versuche scheitern.

Gruß,
Gersen
colinardo
colinardo 01.07.2014 aktualisiert um 14:01:21 Uhr
Goto Top
Moin DWW,
wie sehen die DeviceIDs dieser Geräte denn aus? Poste mal dein findall-String, dann könnte man mit Powershell was scripten.
Lassen sich die Geräte mit devcon nur mit Wildcards nicht löschen aber einzeln schon ?

Grüße Uwe
DerWoWusste
DerWoWusste 01.07.2014 um 15:51:20 Uhr
Goto Top
Hi Gersen.

Danke, Ghostbuster brachte mich jedoch noch nicht weiter - hast Du damit schon von der Kommandozeile aus etwas hinbekommen? MIt der Source von devcon werde ich nichts bewegen können, bin kein Coder.
Wichtiger: dies Problem hat sich gelöst, wie auch immer war mir eine 32-Bit-Devcon in die Finder geraten und die konnte das nicht. Aber es gibt ein neues Problem, siehe Antwort an colinardo.
DerWoWusste
DerWoWusste 01.07.2014 um 16:05:00 Uhr
Goto Top
Moin Uwe.

Ich hatte versehentlich mit der 32-bittigen devcon gearbeitet - autsch. Mit der 64er geht es.
Neues Problem: ich gehe so vor:
for /f %a in ('devcon listclass wpd') do devcon remove "@%a"  
Funktioniert... so lange das Gerät angeschlossen ist. Listclass wirft nichts aus, wenn das Gerät nicht angeschlossen ist.

Ist es dran, Beispiel Windows Phone, liefert devcon listclass wpd
USB\VID_0421&PID_0661&MI_00\6&3AAEC28D&1&0000 : Windows Phone

Das ist der String, den ich brauch, ich bekomme ihn jedoch nur, wenn die Dinger angeschlossen sind... Der Remover muss aber auch laufen, wenn nicht angeschlossen (Workarounds, die auf Anschlussevents reagieren sind natürlich machbar... face-wink )
Gersen
Gersen 01.07.2014 aktualisiert um 16:14:28 Uhr
Goto Top
Schau mal hier oder hier...
DerWoWusste
DerWoWusste 01.07.2014 aktualisiert um 16:18:41 Uhr
Goto Top
Gersen, das bringt mich nicht weiter. Hast Du mein Problem verstanden? devcon listclass wpd liefert nichts, wenn nichts angeschlossen ist - das allein ist das Problem. Den String manuell zu finden, ist kein Ding.
Edit: und der zweite Link ist nur die große Keule...ich will doch nicht alle non-presents deinstallieren.
Gersen
Gersen 01.07.2014 aktualisiert um 16:25:44 Uhr
Goto Top
"This script finds all devices that aren't hidden, and then compares that to a list of every single device seen and removes those that are no longer connected." - Nicht Dein Problem?

EDIT: Sorry, eben erst Dein EDIT gelesen. Aber besteht nicht die Möglichkeit, die Liste, die das Skript erzeugt, auf Deine gewünschten Ergebnisse einzudampfen, bevor die große Remove-Schleife zuschlägt...?
colinardo
colinardo 01.07.2014 aktualisiert um 17:03:55 Uhr
Goto Top
hier erst mal ein Schnippsel zum testen ob der Output deinen gewünschten Geräten entspricht:
Das sollte erst mal deine gewünschten Device-IDs auflisten
$output = (&"c:\devcon_x64.exe" findall "@*").Split("`r`n")  
$deviceIDs = $output | ?{$_ -match 'Windows Phone'} |%{$_.Split(":").Trim()}  
$deviceIDs
Wenn der Output soweit OK ist bau ich dir noch den Remove mit ein.
DerWoWusste
DerWoWusste 01.07.2014 um 16:41:52 Uhr
Goto Top
Hi Uwe.

Es geht ja um SmartPhones generell, nicht nur um Windows-Phones.
Ich werde meinen Workaround nutzen und einen Killertask verteilen, der bei Anschluss sofort zuschlägt.
colinardo
colinardo 01.07.2014 aktualisiert um 16:50:07 Uhr
Goto Top
Zitat von @DerWoWusste:
Ich werde meinen Workaround nutzen und einen Killertask verteilen, der bei Anschluss sofort zuschlägt.
Da werden sich die User drauf freuen face-wink. Aber richtig so ... mach's Ihnen so schwer wie möglich Daten abzuziehen face-smile
DerWoWusste
DerWoWusste 01.07.2014 um 18:28:45 Uhr
Goto Top
Da werden sich die User drauf freuen
Wir schicken gerade unseren Virenscanner in die Wüste und lassen das nun Windows machen, USB-Sticks und Smartphones zu verbieten - die User kennen das schon.