Freigeben über


Klassensymbole

Das Symbol, das zum Darstellen eines Klassenobjekts verwendet wird, kann im iconPath Attribut im Container "DisplaySpecifiers" angegeben werden. Darüber hinaus kann jede Klasse mehrere Symbolzustände speichern. Eine Ordnerklasse kann z. B. Symbole für den Zustand "Öffnen", "Geschlossen" und "Deaktiviert" aufweisen. Die aktuelle Implementierung akzeptiert maximal sechszehn verschiedene Symbolzustände pro Klasse.

Das iconPath--Attribut kann auf zwei Arten angegeben werden.

<state>,<icon file name>

oder

<state>,<module file name>,<resource ID>

In diesen Beispielen ist der "<Zustand>" eine ganze Zahl mit einem Wert zwischen 0 und 15. Der Wert 0 ist als Standard- oder Geschlossenzustand des Symbols definiert. Der Wert 1 ist als offener Zustand des Symbols definiert. Der Wert 2 ist der Status "Deaktiviert". Alle anderen Werte sind anwendungsdefiniert.

Der "<Symboldateiname>" ist der Pfad und Dateiname einer Symboldatei, die das Symbolbild enthält.

Der "<Moduldateiname>" ist der Pfad und Dateiname eines Moduls, z. B. eine EXE oder DLL, die das Symbolbild in einer Ressource enthält. Die "<Ressourcen-ID>" ist eine ganze Zahl, die den Ressourcenbezeichner der Symbolressource innerhalb des Moduls angibt.

Hinzufügen eines Werts zum iconPath--Attribut

Führen Sie die folgenden Schritte aus, um dem attribut iconPath einen Wert hinzuzufügen.

  1. Ermitteln Sie, ob der Wert für das Attribut vorhanden ist. Wenn ein Wert ersetzt werden soll, löschen Sie zuerst den vorhandenen Wert mithilfe der IADs::P utEx--Methode, wobei der parameter lnControlCode auf ADS_PROPERTY_DELETE festgelegt ist, und der vProp Parameter, der auf den zu entfernenden Wert festgelegt ist. Verwenden Sie ADS_PROPERTY_CLEAR oder ADS_PROPERTY_UPDATE nicht für lnControlCode-.
  2. Erstellen Sie die Zeichenfolge, die die Attributsymboldaten darstellt. Ein Beispiel finden Sie im obigen Format.
  3. Verwenden Sie zum Hinzufügen des neuen Werts die methode IADs::P utEx, wobei der lnControlCode Parameter auf ADS_PROPERTY_APPENDfestgelegt ist.
  4. Um Änderungen am Verzeichnis zu übernehmen, rufen Sie IADs::SetInfoauf.