Icon «"CD"-LW ist geladen» - wo in Registry deklartiert?

cumulonimbus8

Fleet Admiral
Registriert
Apr. 2012
Beiträge
19.458
Hallo!

Über die sattsam bekannten Einträge in…
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\X\Defaulticon]
@="I:\\Icons\\{wird nicht verratne}.ICO"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\X\Defaultlabel]
@="X-Ray"

…weise ich meinem DVD-Brenner ein Icon zu (d.h. dem Buchstaben X unter dem es im System bekannt ist). Ist das LW leer zeigt der Explorer auch brav das Icon an.

Lege ich aber eine Silberscheibe ein wird ein Systemicon verwendet.
Hierzu gehört ergänzend zu wissen, dass keinerlei Arten von ArtoRun oder AutoStart aktiv sind. Allein da Laden des leeren Laufwerks (vgl. auch einen Internet-Stick der sich als CD-LW an USB ausgibt) bewirkt das Auftreten des CD-LW-Icons (3. Spalte unten in der vorgegebenen Shll32.DLL, wenn man mal ein Icon anpassen will).

Wo in der Registry (hoffe ich wenigstens) ist dieses Icon (und ggf. andere) deklariert um dort mal etwas augenfreundlicheres einzusetzen?

CN8
 
Such doch mal in der Registry nach shell32.dll, oder evtl. noch spezieller shell32.dll,11 (wobei 11 in diesem Fall der Index des CD-LW-Icons in der .dll ist)
Eventuell findest du dann die Stelle wo das Icon festgelegt werden kann.

Genaueres kann ich dir leider nicht sagen, hab kein XP zum testen hier.

Edit:
Oder evtl. klappt ja das auch für XP:
How to Change a Drive Icon in Windows 7
 
Zuletzt bearbeitet:
shell32.dll,-11 ist es leider nicht.

Und irgendwie bedient sich WIN aus einem bestimmten Topf den ich ausfindig machen will…
Ob Möglichkeit B greift mag ein Reboot zeigen. AutoRun ist abgestellt, somit fällt die Methode aus (eine zufällig eingelegte CD hat AutoRun mit Icon, aber darauf wird nicht reagiert).

Noch mal zur Verdeutlichung: erst das Laden des Laufwerks lässt WIN sein Icon vorzaubern, ohne wird das von mir definierte angezeigt.
Oder anders gesagt: Ich will, dass WIN nicht vordefinierte Icons übergeht und ein Standardicon einsetzt wenn nicht AutoRun (was ironischerweise ja auf Aus steht) ein anderes einbringen wollen würde.

CN8
 
Ah sorry, ich hatte da nen Tippfehler, das - muss weg.
Also shell32.dll,11 müsste es richtig heißen. Ich habs auch oben ausgebessert.
Ich weiß auch nicht ob 11 der richtige Index unter XP ist.
Falls du das nachprüfen willst, habe ich meinen IconViewer angehängt, der die Indizes der Icons mit anzeigt.

Du willst ja, dass immer dein selbst definiertes Icon angezeigt wird - unabhängig davon, ob eine CD eingelegt ist, oder nicht.

Deswegen habe ich eben gedacht du suchst die Stelle in der Registry wo das LW-Icon definiert festgelegt wird, das bei einlegen einer CD geladen wird, und tauschst es durch dein eigenes aus.
 

Anhänge

Zuletzt bearbeitet:
das ist aber auch nicht für Wechsellaufwerke geeignet. Man kann mit ResHacker entsprechende Icons in den DLLs austauschen.
 
Der negative Index hat mich nicht weiter gewundert, so was ist normal. Aber so klappt es nicht (und es ist auch nicht die 11).

Falls du das nachprüfen willst, habe ich meinen IconViewer angehängt, der die Indizes der Icons mit anzeigt.
Ich gehe schwerpunktmäßig davon aus, dass WIN selbst nicht auf diese Weise diese Systemicon anzeigt…

Du willst ja, dass immer dein selbst definiertes Icon angezeigt wird - unabhängig davon, ob eine CD eingelegt ist, oder nicht.
Ja - und nein…
Mein Icon für ›unbenutzt‹ funktioniert. Und (welch Witz) auch bei dem ominösen Card-Reader bleibt dieses Icon (und der LW-Name) gemäß dem genannten REG-Eintrag vorhanden.
Ich will das offensichtliche System-Icon das WIN beim Einlegen von CD/DVD (nicht mal Floppy) hervorkamt weg haben. Das heißt in dem Sinne, dass es nicht ›mein selbst definiertes‹ Icon ist sondern offenbar 2 (natürlich dasselbe) Icons sind die definiert werden müssen. Eins klappt ja schon.

Deswegen habe ich eben gedacht du suchst die Stelle in der Registry wo das LW-Icon definiert festgelegt wird, das bei einlegen einer CD geladen wird, und tauschst es durch dein eigenes aus.
'tschuldige, aber genau daran denke ich seit ich diese Frage gestellt habe.


das ist aber auch nicht für Wechsellaufwerke geeignet. Man kann mit ResHacker entsprechende Icons in den DLLs austauschen.
Ging ja vorher… Und es sind sehr speziell nur Silberscheibenlaufwerke oder solche die sich dafür ausgeben.
Und, nein, ich werde keineswegs solche System-DLLs (wenn denn diese auch tatsächlich die Quelle wären) patchen.

CN8
 
Ich schrieb:
Du willst ja, dass immer dein selbst definiertes Icon angezeigt wird - unabhängig davon, ob eine CD eingelegt ist, oder nicht.
Das war keine Frage von mir, sondern eine Feststellung.
Du willst immer konstant das gleiche Icon für ein bestimmtes Laufwerk.

Dazu hab ich dir eben 2 Ideen genannt, die möglicherweise dein Problem lösen könnten.

1. In der Registry nach shell32.dll,{LW-Icon Index} suchen. (den entsprechenden LW-Icon Index kannst du falls du es benötigst mit meinem Tool oben im Anhang auslesen)
2. Die Anleitung die ich oben gepostet habe ("How to Change a Drive Icon in Windows 7").

Wenn keine der beiden Möglichkeiten klappt, dann würde ich auch sagen patche die shell32.dll.
(wenn du vorher ein Backup machst kann ja auch nichts dabei schiefgehen).
 
Das war keine Frage von mir, sondern eine Feststellung.
Negativ. Eine Behauptung, eine Annahme.
Du willst immer konstant das gleiche Icon für ein bestimmtes Laufwerk.
Negativ. Rein grundsätzlich will ich ein von WIN ›plötzlich‹ eigenmächtig eingefügtes Icon abändern. Dass ich höchstwahrscheinlich rein zufällig das selbe Bild wählen werde hat damit nichts zu tun.

Vage Ideen, allenfalls. Wenn schon will ich ja absolut wissen wo möglicherweise (und ich vermute sogar da leider falsch zu spekulieren) das nunmehr eigenmächtig eingefügte Icon für genau diese eine konkrete Maßnahme (Laufwerk laden / unmittelbar daraus folgende Systmefunktion / Laufwerk ist geladen) definiert wäre.
Ein Blick in den Explorer verrät, dass die Tipps für 7 nicht greifen.
Und Das Patchen von den Filed kommt grundsätzlich nicht in Frage! Weiß ich denn ob Icon #XY nicht anderweitig zum Einsatz kommt? Es kommt mir darauf an, dass WIN das überhaupt tut, nicht das was es tut durch die Kalte Küche anzugreifen.

Es muss doch nur eine Funktion für das Einlegen aufgerufen werden die iconmäßig in eine ungültige läuft und WIN aufs Systemicon zugreifen lässt (das ggf. anders deklariert ist als über den direkten DLL-Ort; vgl. InstalledSystemIcons).

Oder viel mehr: es wird plötzlich diese Routine aufgerufen was evtl. gar nicht passieren sollte - dann müssen wir die Taktik ändern und da angreifen. Nur nahm ich an, dass der Aufruf noch normal und nur ein Icon verbogen wäre…

CN8
 
Zurück
Oben