- Betrifft: Ordnersymbol bei Netzwerkordner bzw. Ordner auf Netzwerkfreigaben festlegen
- System: Microsoft Windows 8.1, Windows 10, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019
- Problem: Bei einem lokalen Ordner kann über die Eigenschaften ein Ordnersymbol festgelegt werden. Bei einem Netzwerkordner bzw. Ordner auf einem Netzwerklaufwerk kann kein Netzwerksymbol festgelegt werden.
Hintergrund
Bei einem lokalen Ordner kann man einfach über die Ordnereigenschaften ein Ordnersymbol festlegen. Dies ist bei bestimmten Systemordner bereits vordefiniert.
Dies macht je nach Organisation ebenfalls für Ordner auf Netzwerklaufwerken Sinn. Entweder um auf bestimmte Ordner direkt hinzuweisen bzw. diese gesondert hervorzuheben. Diese Netzwerklaufwerke liegen zumeist auf Netzwerkfreigaben und diese wiederum sehr oft auf Windows Server – mittlerweile sehr häufig in der “Server Core” Variante.
Die Zuweisung gestaltet sich jedoch etwas schwierig. Lokal wird die entsprechende Option für Ordnersymbol nicht angezeigt. Am Server selbst gibt es aus diversen Gründen ebenfalls keine Möglichkeit zur Konfiguration.
Grundsätzlich wird das Ordnersymbol über die versteckte Systemdatei “desktop.ini” konfiguriert. Es sind dazu drei Ordneroptionen notwendig bzw. empfohlen – siehe vorherige Screenshots. Nun sollte die Systemdatei im jeweiligen Ordner angezeigt werden.
Wird diese Datei z.B. mit Notepad geöffnet, dann kann im Bereich “[.ShellClassInfo]” unter “IconResource” das genutzte Icon gefunden werden. Entweder kann hier eine dll-Datei mit mehreren Icons oder direkt eine ico-Datei angeführt werden. Der Versuch einfach selbst so eine “desktop.ini” anzulegen scheitert ohne genaueren Grund – selbst wenn man eine korrekte Datei in einen anderen Ordner kopiert.
Behebung
Vergesst Drittherstellerprodukte. Es gibt unter Windows und Windows Server (inkl. Server Core) eine integrierte Möglichkeit zur Generierung. Dabei muss man nur auf zwei bestimmte Punkte aufpassen. Die “desktop.ini” muss in einer bestimmten Reihenfolge erstellt werden. Attribute sind kein Zwang. Der Ordner benötigt ein bestimmtes Attribut. Daher nachfolgend die einzelnen Schritte – abschließend folgt ein Skript.
1.) Erstellung “desktop.txt”
Im gewünschten Ordner muss einfach eine “desktop.txt” (nicht “desktop.ini”) erstellt und mit Notepad folgenden Eintrag ergänzt werden:
[.ShellClassInfo]
IconResource=R:\*Pfad*\*Ordnersymbol*.ico,0
Werte mit Sternchen müssen klarerweise angepasst werden. Neben einem Laufwerksbuchstaben ist ebenso eine Netzwerkfreigabe (Laufwerksbuchstaben) möglich.
2.) “desktop.txt” umbenennen
Nun erst die Datei von “desktop.txt” in “desktop.ini” umbenennen. Sollte dies zuvor bereits “desktop.ini” gewesen sein, dann wird es nicht funktionieren.
3.) Korrekte Ordnerattribut festlegen
Nun muss der Ordner das richtige Attribut bekommen. Ansonsten wird die “desktop.ini” ignoriert. Dazu am besten die Windows-Befehlszeile bzw. “Command Prompt” öffnen. Die Windows PowerShell hat bei mir nicht funktioniert. Je nach Ordnerrecht ist es möglich, dass dies lokal direkt am Windows Server gemacht werden muss. Es funktioniert grundlegend mit Laufwerksbuchstaben für Netzwerkfreigaben.
attrib +r *Ordnerpfad*
Das gewählte Ordnersymbol sollte nun angezeigt werden.
4.) Bei Bedarf kann für die “desktop.ini” die gleichen Dateiattribute gesetzt werden, wie es Windows selbst tun würde. Dies geht weiterhin mit der Windows-Befehlszeile bzw. “Command Prompt”.
attrib +s +h *Ordnerpfad*\desktop.ini
Ergänzung: Seit längerem habe ich für diesen Zweck ein Befehlsskript in Verwendung. Dies vereinfacht die Angelegenheit und wird aus dem jeweiligen Ordner gestartet. Dieses Skript habe ich nun überarbeitet und als Download zur Verfügung gestellt:

Skript zum leichterem Setzen eines Ordnersymbols bei lokalen Ordnern. Sollte reibungslos unter Windows 10 und ab Windows Server 2012 R2 (inkl. Server Core) laufen. Das Skript muss sich im jeweiligen zu konfigurierenden Ordner befinden und wird von dort aufgerufen.
Entwicklung via Github: BlackSeals/set_folder-icon
Hi auch, danke für den Artikel
Kleine Änderung , seit vielen Jahren sollen keine Laufwerke verwendet werden – es ist besser im Netzwerk den UNC zu verwenden. Um die Symbole auch dann automatisch für alle anzuzeigen ;
1. Ordner auf Server mit den Symbolen ( *.ico) ReadOnly für jeden freigeben
2. Damit es einfach wird, auf dem Server die Symbole dem Ordner zuordnen ( hier könnte man schon
mit \\MyServer\IconVerzeichnis\… die Icons auswählen, dann ist an dieser Stelle alles zuende
3.ansonsten : wenn man über LW die Icons zugewiesen hat, die desktop.ini editieren ( ggf. erst sichtbar
machen weil diese ist versteckt ! ) . dort die
[.ShellClassInfo]
IconResource=R:\*Pfad*\*Ordnersymbol*.ico,0
in
[.ShellClassInfo]
IconResource=R:\\MyServer\*Pfad*\*Ordnersymbol*.ico,0
ändern
Bütteschön
Bitte gerne.
Die Angelegenheit mit den Laufwerksbuchstaben und UNC-Pfad ist nur ein Gerücht und ohne Kontext nicht wahr. Genau genommen gilt es umgekehrt, da Windows Laufwerkbuchstaben generell für vertrauenswürdiger erachtet als UNC-Pfade. Zudem haben nach wie vor einige Programme mit UNC-Pfade Probleme (erst kürzlich IrfanView) oder unterstützen diese überhaupt nicht.
Zudem dürfte sich da ein Fehler eingeschlichen haben. Für UNC Pfad müsste es:
[.ShellClassInfo]
IconResource=\\MyServer\*Pfad*\*Ordnersymbol*.ico,0
sein. Also “R:” (=Laufwerksbuchstabe) gehört entfernt.