
Eu acesso um compartilhamento do Windows eo 'ícone de pasta'seção (a inferior) está faltandoem suas configurações. Ele aparece corretamente nas pastas locais. Eu gostaria de ter isso com os dois.
Uma janela de propriedades da pasta com a configuração do ícone destacada
Responder1
Você desejará usar um arquivo desktop.ini para personalizar o ícone. Normalmente, isso é tudo que você realmente faz quando usa o botão "Alterar ícone" acima. Para documentação completa consulte:Como personalizar pastas com desktop.ini Segue um exemplo de arquivo desktop.ini:
[DeleteOnCopy]
Owner=MyUser
Personalized=13
PersonalizedName=My Folder
[.ShellClassInfo]
[email protected],-12689
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-237
Além disso, se quiser fazer isso sem precisar criar manualmente o desktop.ini, você pode criar uma pasta localmente, aplicar as configurações desejadas e roubar seu desktop.ini. (Se você não o vir, copie a pasta inteira; ela deve ter um nome correto originalmente.) O vídeo do youtubeAplicar um ícone a uma pasta em uma unidade de redemostra esse processo, mas usa movimentos de pasta em vez de criar uma nova pasta.
Responder2
Já faz muito tempo que não vejo tanto touro :)
Clique com o botão direito --> Propriedades --> Personalizar ---> Alterar ícone não está disponível em compartilhamentos SMB.
... ---> Alterar imagem não tem efeito.
Desktop.ini NÃO é processado pelo Windows para compartilhamentos SMB, porque o Linux interpreta o bit "Somente leitura" (da pasta) de maneira diferente e o reporta incorretamente ao Windows:
- No Linux, somente leitura significa somente leitura!
- No Windows, Somente leitura (somente com pastas) significa processo Desktop.ini !!!
Supõe-se que haja uma configuração de registro que força o processamento do Desktop.ini usando o sinalizador "Sistema" (superoculto) em vez de "Somente leitura", mas nunca consegui que funcionasse como esperado.
A falta de processamento desktop.ini no SMB quebra muitas outras coisas, não apenas ícones de pastas: links simbólicos e espaços de nomes personalizados também não funcionam. Os vagabundos da Microsoft simplesmente se recusam a lidar com isso, desde o Windows NT.
É claro que sempre é possível criar links indiretos para acessar as pastas SMB e, em vez disso, fornecer esses ícones personalizados, mas isso causa vários outros problemas:
- Os links de atalho são avaliados e armazenados em cache por padrão no Windows quando você abre a pasta pai, causando atrasos "enormes" no Explorer se uma pasta contiver atalhos para compartilhamentos de rede lentos ou inativos.
- Os atalhos nas janelas são absolutos, não relativos, portanto não são portáteis. Isso cria muita manutenção caso o caminho raiz de destino mude. O Windows também tem o hábito de converter automaticamente vars de ambiente em links absolutos, frustrando qualquer tentativa de contornar isso.
- Seu serviço "Cliente de rastreamento de link distribuído" atrapalha ainda mais as coisas.
A melhor maneira de implementar links relativos no Windows é usar o script VBS. No formato nativo (texto), o script VBS não terá um ícone personalizado, mas você pode atribuir um ícone personalizado ao arquivo EXE se compilá-lo.
Porém, isso dá muito trabalho, e o script criará mensagens de aviso "não confiáveis" toda vez que você o iniciar em uma rede, a menos que o script seja local ou você encontre uma maneira de assiná-lo.
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
===============================================================
Responder3
O método de personalização descrito por ssnobody pressupõe que você tenha a capacidade de alterar a pasta na máquina remota,eque você deseja que a aparência seja alterada para todos os usuários remotos e locais da pasta. Se alguma dessas opções não for verdadeira, você pode querer usar esta alternativa: crie um atalho local para a pasta remota (por exemplo, clique com o botão direito, arraste-o para a área de trabalho local e selecione "criar atalho") e, em seguida, use o normal "alterar ícone" da caixa de diálogo de propriedades para alterar o ícone do atalho.
Responder4
Uma solução alternativa é renomear seu arquivo de imagem para “folder.jpg” e colocá-lo na pasta compartilhada.
Qualquer pessoa com acesso e usando qualquer uma das visualizações de "ícone" ou "bloco" no Explorer poderá vê-lo.