Forum: PC-Programmierung Mit Script USB Eintrag aus Registry löschen


von Matze (Gast)


Lesenswert?

Hallo an alle,

Ich habe ein kleines Problem und weiß nicht weiter:

Ich möchte einen bestimmten Eintrag aus meiner Registry per script 
löschen lassen. (siehe Bild)
Am Besten den kompletten Ordner/Strang.

Ich habe es mit folgendem Code schon probiert:

Dim WSHShell
Set WSHShell = CreateObject("WScript.Shell")

WSHShell.RegDelete 
"HKLM\SYSTEM\CurrentControlSet\Enum\USB\VID_1247&PID_00F8"

Bekommen aber nur gesagt, dass das Wurzelverzeichnis nicht existiert, 
blablabla...
Kann mir jemand helfen??

Danke im Voraus

von Robert L. (lrlr)


Lesenswert?

naja

"HKLM"

sollte man vermutlich ausschreiben..

von Peter II (Gast)


Lesenswert?

Robert L. schrieb:
> sollte man vermutlich ausschreiben..

habe ich auch gedacht, aber es steht drin das man es abkürzen darf.

http://msdn.microsoft.com/de-de/library/bb979518.aspx


einfach mal mit Regmon oder ProcMon schauen was passiert.

von Tilo (Gast)


Lesenswert?

auf die Verzeichnise kommt man nur, wenn das Programm als Admin, also 
als echter Admin, ausgeführt ist. Fehlen eventuell RechtE?

von Matze (Gast)


Lesenswert?

Tilo Lutz schrieb:
> auf die Verzeichnise kommt man nur, wenn das Programm als Admin, also
> als echter Admin, ausgeführt ist. Fehlen eventuell RechtE?

das habe ich mir auch schon gedacht, aber wenn ich den Anschluss im 
Gerätemanager deinstallieren möchte, fragt er mich ob ich wirklich das 
ändern möchte und macht es dann auch.
Von dem her dachte ich dass es nicht an den Rechten liegen sollte. Oder?

von Timmo H. (masterfx)


Lesenswert?

Vielleicht ist das "&"-Zeichen hier das Problem.
Versuch mal
1
WSHShell.RegDelete
2
"HKLM\SYSTEM\CurrentControlSet\Enum\USB\VID_1247" & Chr(38) & "PID_00F8"

von Matze (Gast)


Angehängte Dateien:

Lesenswert?

Timmo H. schrieb:
> "HKLM\SYSTEM\CurrentControlSet\Enum\USB\VID_1247" & Chr(38) & "PID_00F8"
>
>
>
Hallo,

also habe es mal ausgetestet, aber ich bekomme wieder die gleiche blöde 
Meldung...
Hat jemand noch eine Idee??

von Robert L. (lrlr)


Lesenswert?

hast es jetzt als Administrator gestartet oder nicht ??

von Matze (Gast)


Lesenswert?

Robert L. schrieb:
> hast es jetzt als Administrator gestartet oder nicht ??

ja hab ich. Wie gesagt über den Gerätemanager kann ich es Problemlos 
deinstallieren und dann ist der Anschluss auch aus der Registry raus.

von Robert L. (lrlr)


Lesenswert?

das ist u.U: das hauptproblem:

http://support.microsoft.com/kb/279847/de


(man kann soweit ich das jetzt getestet habe, überhaupt nur WERTE 
löschen, keine Schlüssel)

von Walter (Gast)


Lesenswert?

Hallo,
möglicherweise hilft Dir devcon.exe von MS, ein vollwertiger Ersatz für 
den Gerätemanager, batchfähig.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das Löschen auch von Schlüsseln ist über ein Registryskript möglich, das 
regedit als Kommandozeilenparameter übergeben wird:

blafusel.reg
1
Windows Registry Editor Version 5.00
2
3
[-HKLM\SYSTEM\CurrentControlSet\Enum\USB\VID_1247&PID_00F8]

Durch das Voranstellen des '-' vor den Schlüsselnamen wird der Schlüssel 
gelöscht.

Die Datei kann mit einem Doppelklick in die Registry importiert werden, 
oder aber per Kommandozeile (was natürlich entsprechende Berechtigungen 
voraussetzt):
1
regedit.exe /s blafusel.reg


Mehr dazu hier

http://support.microsoft.com/kb/310516/en-us


Ob es allerdings sinnvoll (oder auch nur möglich) ist, einen Zweig aus 
ENUM zu löschen, das steht auf einem ganz anderen Blatt. Dieser Bereich 
der Registry wird vom System selbst verwaltet und hat eine andere 
Funktion, als der Threadstarter vermutlich erwartet.

http://msdn.microsoft.com/en-us/library/windows/hardware/ff546173%28v=vs.85%29.aspx

von Matze (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

also mit dem Registryeintrag hatte ich es ganz am Anfang getestet aber 
leider löscht er gar nichts raus.

Noch jemand eine Idee?

von Ralf D. (dreilira)


Lesenswert?

http://msdn.microsoft.com/en-us/library/windows/hardware/ff546173%28v=vs.85%29.aspx

Ganz klare Ansage:
Drivers and Windows applications must not access the Enum tree directly.

"Must not" heißt auf deutsch "dürfen nicht". Also offiziell Finger weg. 
Ich vermute, daß der P&P Manager stillschweigend den Key wieder 
einträgt, wenn er gelöscht wird.

Gruß
Ralf

von Robert L. (lrlr)


Lesenswert?

@Matze



(auch wenn meine Antwort weiter oben falsch war)
in diesem Fall (.reg File) musst du es wirklich ausschreiben !


(und nein, du solltest in diesem Bereich der registry wirklich nicht 
herumpfuschen!)

von Christian R. (supachris)


Lesenswert?

Ich hab da auch noch keine Lösung gefunden, gerade wenn man mal wieder 
alte nicht mehr angesteckte USB Geräte aufräumen will. Mit devcon kann 
man das leider auch nicht wirklich machen. Vielleicht geht ja mit dem 
DIFx was, aber da hatte ich noch keine Zeit...

von Robert L. (lrlr)


Lesenswert?


von Robert L. (lrlr)


Lesenswert?

>Ich hab da auch noch keine Lösung gefunden, gerade wenn man mal wieder
>alte nicht mehr angesteckte USB Geräte aufräumen will

habs gerade ausprobiert, funktioniert (auch unter win7 problemlos)

wie kann man so eine lösung "nicht finden" ???

von Christian R. (supachris)


Lesenswert?

Natürlich klappt das. Aber ich hätte gerne eine automatisierte Lösung um 
alle Geräte einer GUID/VID/PID... egal ob angesteckt oder nicht, gleich 
in einem Rutsch zu deinstallieren. Mit den ganzen bestätigen Nachfragen 
wird man da adlig im Gerätemanager.

von Robert L. (lrlr)


Lesenswert?

und warum funktioniert das oben ageführte

http://support.microsoft.com/kb/311272

nicht ??


also devcon  remove ?

von Christian R. (supachris)


Lesenswert?

devcon remove klappt nur bei angeschlossenen Geräten. devcon findall 
findet zwar auch ausgeblendete aber auch mit dem kompletten Pfad bei 
devcon remove lassen die sich nicht deinstallieren. Die 
Umgebungsvariable für den Gerätemanager hilft da auch nicht.

von Timmo H. (masterfx)


Lesenswert?


von Robert L. (lrlr)


Lesenswert?

hab ich schon gepostet
07.02.2012 10:01


@christian

irgendwas machst du falsch

http://www.robvanderwoude.com/devcon.php

RmHidDev.bat

vielleicht hilfts!?

von Christian R. (supachris)


Lesenswert?

Die Seite kenne ich, aber unter Windows 7 (x64 in meinem Fall) klappt 
das nicht. Da lassen sich nur angesteckte Devices deinstallieren. Bei 
Windows XP klappts mit dem Script (oder auch manuell). Aber Windows 7 
mag das nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.