Встановіть спеціальну піктограму папки для мережевої папки в Провіднику файлів Windows


11

Я доступ до загального ресурсу Windows , і в « папці значок » розділ (нижній) відсутня в його налаштуваннях. Він відображається належним чином у локальних папках. Я хотів би мати це з обома.

Вікно властивостей папки з виділеною настройкою піктограми

Вікно властивостей локальної папки

Відповіді:


12

Вам потрібно скористатися файлом desktop.ini для налаштування піктограми. Зазвичай, це все, що ви насправді робите, коли ви використовуєте кнопку "Змінити значок" вище. Повна документація дивіться у розділі: Як налаштувати папки з desktop.ini Приклад файлу desktop.ini:

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

На відміну від цього, якщо ви хочете зробити це без необхідності створювати desktop.ini вручну, ви можете створити папку локально, застосувати потрібні налаштування та викрасти його desktop.ini. (Якщо ви цього не бачите, скопіюйте всю папку; спочатку вона повинна мати правильне ім’я.) Відео на YouTube, застосувавши значок до папки на мережевому диску, показує цей процес, але використовує переміщення папки, а не створення нової папки. .


1
Ось більш детальний список desktop.iniваріантів
Tobias Kienzler

1
Чи можливо, що це не працює для SMB-акцій, які розміщені на комп'ютері Linux? Я встановлюю desktop.ini на своєму комп'ютері з Windows і намагаюся побачити дерево файлів у Windows. Мій desktop.ini не приховано, і я не бачу свого власного значка :( -
Майкл Уолтер

Чи можливо на вашому desktop.ini насправді додано інше приховане розширення, яке спричиняє його використання? Я не вірю, що Windows чутливий до того, де розміщується папка, будь то через рідну Windows CIFS або через Samba CIFS / SMB.
ssnobody

1
Є декілька готчей. У каталозі повинен бути встановлений атрибут "лише для читання"; desktop.iniповинен бути «прихований» і «система». Я не знаю, як це можна зробити в Linux. Також desktop.iniфайл повинен бути закодований Unicode. Це, ймовірно, не відбудеться, якщо ви створите файл з подібними інструментами * nix vi.
G-Man каже: "Відновіть Моніку"

1
Зверніть увагу, вам також потрібно встановити папку, що містить вміст, лише для читання (або системи), наприклад, через attrib +rабо attrib +s.
Тобіас Кіенцлер

2

Метод налаштування, окреслений ssnobody, передбачає, що у вас є можливість змінити папку на віддаленій машині, і ви хочете змінити зовнішній вигляд для всіх віддалених та місцевих користувачів папки. Якщо будь-яке з них не відповідає дійсності, можливо, ви хочете скористатися цією альтернативою: створіть локальний ярлик у віддалену папку (наприклад, перетягніть її правою кнопкою миші на локальний робочий стіл і виберіть "створити ярлик"), а потім скористайтеся звичайною "зміною" значок "кнопки діалогового вікна властивостей, щоб змінити значок ярлика.


1

Обхід полягає в тому, щоб перейменувати файл зображення на "folder.jpg" і помістити в загальну папку.

Будь-хто, хто має доступ та використовує будь-який із переглядів "піктограми" чи "плитки" в Провіднику, побачить це.


Будь ласка, прочитайте запитання ще раз уважно. Ваша відповідь не відповідає на початкове запитання. Це не змінює значок папки.
DavidPostill

1

Здавна я бачив стільки биків :)

  1. Клацніть правою кнопкою миші -> Властивості -> Налаштувати ---> Піктограма зміни недоступна для акцій SMB.

  2. ... ---> Зміна зображення не впливає.

  3. Desktop.ini НЕ обробляється Windows для акцій SMB, тому що Linux трактує (лише для читання) папки по-різному і повідомляє про це в Windows неправильно:

    • В Linux читання означає лише читання!
    • У Windows лише для читання (лише з папками) означає обробляти Desktop.ini !!!
  4. Передбачається встановлення налаштування реєстру, яке змушує обробляти Desktop.ini, використовуючи прапор "Система" (супер прихований) замість "Лише для читання", але я ніколи не змушував його працювати як слід.

  5. Відсутність обробки desktop.ini на SMB порушує багато інших речей, а не лише піктограми папок: символічні посилання та персоналізовані пробіли імен також не функціонують. Майстри в Microsoft просто відмовляються боротися з цим, аж до Windows NT.

  6. Звичайно, завжди можна створити непрямі посилання для доступу до папок SMB та надати ці власні піктограми, але це спричиняє численні інші проблеми:

    • Короткі посилання оцінюються та кешуються за замовчуванням у Windows, коли ви відкриваєте батьківську папку, викликаючи "масові" затримки в Explorer, якщо папка містить ярлики для повільного або сплячого обміну мережею.
    • Ярлики у вікнах абсолютні, не відносні ерго не переносні. Це створює велике обслуговування у разі зміни цільового кореневого шляху. У Windows також є звичка автоматично перетворювати значення середовища в абсолютні посилання, перемагаючи будь-які спроби вирішити цю проблему.
    • Їхній службовий клієнт «Розподілений клієнт відстеження посилання» ще більше накручує справи.
  7. Найкращий спосіб реалізувати відносні посилання в Windows - це використання сценарію VBS. У рідній (текстовій) формі сценарій VBS не матиме власної піктограми, але ви можете призначити користувальницьку піктограму файлу EXE, якщо скомпілювати її.

Це дуже багато роботи, і сценарій створюватиме "ненадійні" попереджувальні повідомлення щоразу, коли ви запускаєте його з мережі, якщо сценарій не є локальним або ви не знайдете способу його підписати.

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
===============================================================

Є варіанти самби, які впливають на те, як Linux повідомляє атрибут Windows "лише для читання" і дозволяють обробляти Desktop.ini Windows для акцій SMB
ssnobody

0

Створіть папку з іконками, наприклад, C:\Iconsна сервері (ви можете приховати папку з властивостей, якщо ви не хочете її бачити). Помістіть ваші .icoфайли у цю папку. Налаштуйте спільні папки на сервері. Тепер скопіюйте свої .icoфайли на C:\Iconsклієнт ПК, але не в їх копії. Тепер ви побачите піктограми Network Share на ПК (сервері та клієнті). Якщо ви не можете отримати доступ до Сервера, ви можете створити лише ярлики на Клієнті та змінити їх значки.


Це важко зрозуміти і підозріло. Що ви маєте на увазі під «Налаштувати свої папки на мережевому ПК». ОП каже, що не може. Ви маєте на увазі, що він повинен увійти безпосередньо на машину, яка ділиться накопичувачем? Також не рекомендується розміщувати матеріали у кореневому каталозі.
G-Man каже: "Відновіть Моніку"

Звичайно, вам потрібно отримати доступ до мережевої машини, якщо ви хочете налаштувати піктограми папок.

Як тільки ви це зробили, скопіюйте всі свої ico-файли на інший ПК (таким же шляхом, наприклад, c: \ icons), і ви побачите піктограми спільного доступу до мережі на обох машинах.

(1) Якщо ви говорите, що користувач повинен увійти безпосередньо до "мережевої машини", то я пропоную вам сказати: "Ви повинні увійти безпосередньо на віддалену машину (файловий сервер)." Дозвіл на використання спільної частки на сервері не обов'язково означає дозвіл / можливість входу безпосередньо на нього. (І, ІМХО, «мережевий ПК» - це погана термінологія.) (2) Я все-таки рекомендую не вносити речі в кореневий каталог.  \Users\Public\Documentsабо еквівалент, мабуть, кращий. І навіть це необхідно лише в тому випадку, якщо ви хочете використовувати піктограми, яких ще немає на файловому сервері.
G-Man каже: "Відновіть Моніку"

Гаразд, але користувач хотів знати, як налаштувати піктограми на \\ сервері \ share; відповідь - вам належить отримати доступ до сервера; і якщо ви не помістите ті самі значки в один і той же шлях на вашій машині, ви ніколи не побачите цих значків (крім сервера). Тоді ми можемо обговорити все інше ... термінологію, каталоги тощо. Я хотів зробити те саме, і це єдиний спосіб :)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.