IconIndex-Wert von -101 in desktop.ini, der auf das zweite Symbol in der DLL verweist?

IconIndex-Wert von -101 in desktop.ini, der auf das zweite Symbol in der DLL verweist?

Ich habe einen Ordner, der im Windows Explorer wie folgt angezeigt wird:
Bildbeschreibung hier eingeben

In diesem Ordner hat die versteckte desktop.ini diesen Inhalt:

[.ShellClassInfo]
[email protected],-12688
IconFile=%SystemRoot%\system32\mydocs.dll
IconIndex=-101

Das mydocs.dllenthält eigentlich genauZWEISymbole, bei denen diezweiteEines davon ist das Symbol, das vom Windows Explorer zum Anzeigen des oben genannten Ordners verwendet wird.

Sollte also die letzte Zeile des desktop.ini-Inhalts nicht IconIndex=1(vorausgesetzt, Windows beginnt bei 0 zu zählen) statt lauten IconIndex=-101?

Ich habe versucht, den Wert als Binär-, Hexadezimal- oder Oktalwert zu interpretieren -101, aber nichts davon ließ sich in eine Zahl übersetzen, die das zweite Symbol darstellen würde.

Wie also -101verweist der Wert auf das ZWEITE Symbol in mydocs.dll?

Antwort1

Der negative IconIndex bezieht sich auf den Kehrwert desRessourcen-ID. Sehendieser Microsoft-Entwicklerblog:

In Windows 95 wurde die ExtractIcon-Funktion erweitert, sodass Sie ein Symbol auch durch seine Ressourcen-ID angeben können, indem Sie deren Negativ als Symbolindex übergeben.

Siehe auch dieMicrosoft-Dokumentation.

In Ihrem Fall hat das verwendete Symbol eine Ressourcen-ID:101und wird daher angezeigt als-101. Nachdem ich meine eigene mydocs.dll überprüft habe, zeigt sie, dass die Ressourcen-ID für das von Ihnen angezeigte Symbol 101 und die Ressourcen-ID 100 für das erste Symbol (Ordner mit Dokument) ist.

verwandte Informationen