Legen Sie im Windows-Datei-Explorer ein benutzerdefiniertes Ordnersymbol für einen Netzwerkordner fest

11

Ich greife auf eine Windows-Freigabe zu und der Abschnitt " Ordnersymbol " (der untere) fehlt in den Einstellungen. Es wird ordnungsgemäß in lokalen Ordnern angezeigt. Ich würde es gerne mit beiden haben.

Ein Fenster mit Ordnereigenschaften, in dem die Symboleinstellung hervorgehoben ist

Ein Fenster mit den Eigenschaften lokaler Ordner


quelle

Antworten:

12

Sie möchten eine desktop.ini-Datei verwenden, um das Symbol anzupassen. Normalerweise ist das alles, was Sie tatsächlich tun, wenn Sie die Schaltfläche "Symbol ändern" oben verwenden. Eine vollständige Dokumentation finden Sie unter: So passen Sie Ordner mit desktop.ini an Eine Beispieldatei für desktop.ini folgt:

[DeleteOnCopy]
Owner=MyUser
Personalized=13
PersonalizedName=My Folder
[.ShellClassInfo]
[email protected],-12689
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-237

Wenn Sie dies tun möchten, ohne die Datei desktop.ini manuell erstellen zu müssen, können Sie einen Ordner lokal erstellen, die gewünschten Einstellungen anwenden und die Datei desktop.ini stehlen. (Wenn Sie es nicht sehen, kopieren Sie es über den gesamten Ordner. Es sollte ursprünglich einen korrekten Namen haben.) Das YouTube-Video Ein Symbol auf einen Ordner auf einem Netzwerklaufwerk anwenden zeigt diesen Vorgang, verwendet jedoch Ordnerverschiebungen, anstatt einen neuen Ordner zu erstellen .

ssnobody
quelle
1
Hier ist eine detailliertere Liste von desktop.iniOptionen
Tobias Kienzler
1
Ist es möglich, dass dies nicht für SMB-Freigaben funktioniert, die auf einem Linux-Computer gehostet werden? Ich richte die Datei desktop.ini auf meinem Windows-Computer ein und versuche, den Dateibaum in Windows anzuzeigen. Meine desktop.ini ist nicht versteckt und ich sehe mein benutzerdefiniertes Symbol nicht :( -
Michael Walter
Ist es möglich, dass an Ihre desktop.ini tatsächlich eine andere versteckte Erweiterung angehängt ist, die dazu führt, dass sie nicht verwendet wird? Ich glaube nicht, dass Windows empfindlich darauf reagiert, wo der Ordner gehostet wird, sei es über natives Windows CIFS oder über Samba CIFS / SMB.
ssnobody
1
Es gibt mehrere Fallstricke. Für das Verzeichnis muss das Attribut "schreibgeschützt" festgelegt sein. das desktop.inimuss "versteckt" und "system" haben. Ich weiß nicht, wie das unter Linux geht. Außerdem muss die desktop.iniDatei Unicode-codiert sein. Dies wird wahrscheinlich nicht passieren, wenn Sie die Datei mit * nix-Tools wie erstellen vi.
G-Man sagt "Reinstate Monica"
1
Beachten Sie, dass Sie den enthaltenen Ordner auch auf schreibgeschützt (oder System) einstellen müssen, z . B. über attrib +roder attrib +s.
Tobias Kienzler
2

Bei der von ssnobody beschriebenen Anpassungsmethode wird davon ausgegangen, dass Sie den Ordner auf dem Remotecomputer ändern können und dass das Erscheinungsbild für alle Remote- und lokalen Benutzer des Ordners geändert werden soll. Wenn eine dieser Bedingungen nicht erfüllt ist, können Sie diese Alternative verwenden: Erstellen Sie eine lokale Verknüpfung zum Remote-Ordner (z. B. ziehen Sie sie mit der rechten Maustaste auf den lokalen Desktop und wählen Sie "Verknüpfung erstellen"), und verwenden Sie dann die normale Änderung Symbol "Schaltfläche des Eigenschaftendialogs, um das Symbol der Verknüpfung zu ändern.

mgkrebbs
quelle
1

Eine Problemumgehung besteht darin, Ihre Bilddatei "folder.jpg" umzubenennen und im freigegebenen Ordner abzulegen.

Jeder, der Zugriff hat und eine der "Symbol" - oder "Kachel" -Ansichten im Explorer verwendet, wird diese sehen.

BIll R.
quelle
Bitte lesen Sie die Frage noch einmal sorgfältig durch. Ihre Antwort beantwortet nicht die ursprüngliche Frage. Das Ordnersymbol wird dadurch nicht geändert.
DavidPostill
1

Es ist lange her, dass ich so viel Stier gesehen habe :)

  1. Klicken Sie mit der rechten Maustaste -> Eigenschaften -> Anpassen ---> Änderungssymbol ist für SMB-Freigaben nicht verfügbar.

  2. ... ---> Bildwechsel hat keine Auswirkung.

  3. Desktop.ini wird von Windows NICHT für SMB-Freigaben verarbeitet, da Linux das Bit "Schreibgeschützt" (Ordner) unterschiedlich interpretiert und es falsch an Windows zurückmeldet:

    • Unter Linux bedeutet schreibgeschützt schreibgeschützt!
    • In Windows bedeutet "Schreibgeschützt" (nur mit Ordnern) "Desktop.ini verarbeiten" !!!
  4. Es sollte eine Registrierungseinstellung geben, die die Verarbeitung von Desktop.ini erzwingt, indem das Flag "System" (super versteckt) anstelle von "Schreibgeschützt" verwendet wird, aber ich habe es nie wie erwartet zum Laufen gebracht.

  5. Das Fehlen der Verarbeitung von desktop.ini in SMB führt zu vielen anderen Problemen, nicht nur zu Ordnersymbolen: Symbolische Links und personalisierte Namensräume funktionieren ebenfalls nicht. Die Penner bei Microsoft weigern sich nur, sich damit zu befassen, bis hin zu Windows NT.

  6. Es ist natürlich immer möglich, indirekte Links für den Zugriff auf die SMB-Ordner zu erstellen und stattdessen diese benutzerdefinierten Symbole anzugeben. Dies führt jedoch zu mehreren anderen Problemen:

    • Verknüpfungen werden in Windows standardmäßig ausgewertet und zwischengespeichert, wenn Sie den übergeordneten Ordner öffnen. Dies führt zu "massiven" Verzögerungen im Explorer, wenn ein Ordner Verknüpfungen zum Verlangsamen oder Ruhen von Netzwerkfreigaben enthält.
    • Verknüpfungen in Fenstern sind absolut, nicht relativ, also nicht portabel. Dies verursacht viel Wartung, falls sich der Zielstammpfad ändert. Windows hat auch die Angewohnheit, Umgebungsvariablen automatisch in absolute Links zu konvertieren, um jeden Versuch zu umgehen, dies zu umgehen.
    • Ihr "Distributed Link Tracking Client" -Dienst macht alles noch schlimmer.
  7. Der beste Weg, um relative Links in Windows zu implementieren, ist die Verwendung eines VBS-Skripts. In nativer (Text-) Form verfügt das VBS-Skript nicht über ein benutzerdefiniertes Symbol. Sie können der EXE-Datei jedoch ein benutzerdefiniertes Symbol zuweisen, wenn Sie es kompilieren.

Das ist jedoch eine Menge Arbeit, und das Skript erstellt bei jedem Start aus einem Netzwerk "nicht vertrauenswürdige" Warnmeldungen, es sei denn, das Skript ist lokal oder Sie finden einen Weg, es zu signieren.

VBS Relative Link example:
============================
'  This is a VB Script, which emulates a RELATIVE file link/shortcut in Win XP
'
'  1) The first  line declares an untyped variable      ==> objshell
'
'  2) The second line instantiates a new object derived from    ==> Shell.Application
'
'  3) The third  line invokes the object's method       ==> ShellExecute
'
'     with the following parametters:   "target path"
'                                       "target's arguments"
'                   "starting directory"
'                   "action verb"
'                                       Initial window mode:  0 = Hidden Window
'                                                             1 = Normal Window
'                                                             2 = Minimized
'                                                             3 = Maximized
'                                                             4 = Most recent size and position, keep active window active
'                                                             5 = Current size and position
'                                                             6 = 
'                                                             7 = Minimized, keep active window active
'                                10 = Default state specified by target application
'
'  4) The last line frees/destroys the shell object
'
'
dim objShell
set objShell = CreateObject("Shell.Application")
objShell.ShellExecute                                 _
  "..\..\..\SomePath_Three_Dirs_UP_etc"              ,_
  ""                                                 ,_
  ""                                                 ,_
  "open"                                             ,_
  1
set objShell = nothing
===============================================================
Gast
quelle
Es gibt Optionen für Samba, die beeinflussen, wie Linux das "schreibgeschützte" Attribut an Windows meldet und die es Desktop.ini ermöglichen, von Windows für SMB-Freigaben verarbeitet zu werden
ssnobody
0

Erstellen Sie einen Symbolordner, z. B. C:\Iconsauf dem Server (Sie können den Ordner vor den Eigenschaften ausblenden, wenn Sie ihn nicht sehen möchten). Legen Sie Ihre .icoDateien in diesem Ordner ab. Passen Sie Ihre freigegebenen Ordner auf dem Server an. Kopieren Sie nun Ihre .icoDateien auf C:\IconsIhren PC-Client (als Duplikat). Jetzt sehen Sie die Symbole für die Netzwerkfreigabe auf beiden PCs (Server und Client). Wenn Sie nicht auf den Server zugreifen können, können Sie nur Verknüpfungen auf dem Client erstellen und deren Symbole ändern.

Studiohack
quelle
Das ist schwer zu verstehen und verdächtig. Was meinen Sie mit "Anpassen Ihrer Ordner auf dem Netzwerk-PC"? Das OP sagt, er kann nicht. Meinen Sie damit, dass er sich direkt bei dem Computer anmelden muss, der das Laufwerk gemeinsam nutzt? Es wird auch nicht empfohlen, Inhalte in das Stammverzeichnis zu stellen.
G-Man sagt "Reinstate Monica"
Natürlich müssen Sie auf den Netzwerkcomputer zugreifen, wenn Sie Ordnersymbole anpassen möchten.
Wenn Sie dies getan haben, kopieren Sie alle Ihre ICO-Dateien auf einen anderen PC (im selben Pfad, z. B. c: \ icons), und auf beiden Computern werden Symbole für die Netzwerkfreigabe angezeigt.
(1) Wenn Sie sagen, dass sich der Benutzer direkt am „Netzwerkcomputer“ anmelden muss , sollten Sie sagen: „Sie müssen sich direkt am Remotecomputer (Dateiserver) anmelden.“ Die Berechtigung zur Verwendung einer Freigabe auf einem Server bedeutet nicht unbedingt die Berechtigung / Fähigkeit, sich direkt bei diesem Server anzumelden. (Und meiner Meinung nach ist „Netzwerk-PC“ eine schlechte Terminologie.) (2) Ich empfehle immer noch, Dinge nicht in das Stammverzeichnis zu stellen.  \Users\Public\Documentsoder das Äquivalent ist wahrscheinlich besser. Und selbst das ist nur notwendig, wenn Sie Symbole verwenden möchten, die sich noch nicht auf dem Dateiserver befinden.
G-Man sagt "Reinstate Monica"
Ok, aber der Benutzer wollte wissen, wie Symbole auf \\ Server \ Freigabe angepasst werden können. Die Antwort ist, dass Sie auf den Server zugreifen müssen. Wenn Sie auf Ihrem Computer nicht dieselben Symbole in denselben Pfad einfügen, werden diese Symbole nie angezeigt (außer auf dem Server). Dann können wir über alles andere diskutieren ... Terminologie, Verzeichnisse usw. Ich wollte das Gleiche tun und das ist der einzige Weg :)