Que tipos diferentes de atalho existem?

8

Notei que o Windows parece ser capaz de criar vários tipos diferentes de atalhos. No momento, estou tentando entender um atalho de pasta existente na pasta Atalhos de rede do meu perfil. No Windows Explorer, ele aparece como uma pasta com a sobreposição de atalho, o Tipo listado é "Pasta de arquivo" e clicar duas vezes leva-me a um local de rede. A visualização no PowerShell mostra que é uma pasta e dentro dela há um arquivo "target.lnk".

Além disso, muitas vezes acho que a janela Propriedades de outros atalhos estará ausente no campo "Destino". Eu acho que esses podem ser atalhos do Windows Installer. Excluindo junções e links simbólicos, existem outros tipos de atalhos por aí? Melhor ainda, há alguma documentação que eu possa ver que lista todas elas?

* edit: mais informações abaixo sobre o tipo de atalho que mais me preocupa.

O Explorer vê uma pasta (BShacklett) como um atalho. O Powershell vê o seguinte:

Directory: C:\Users\bshacklett\AppData\Roaming\microsoft\windows\Network
Shortcuts\BShacklett


Mode                LastWriteTime     Length Name
----                -------------     ------ ----
---hs        2012-06-11     10:50         75 desktop.ini
-a---        2012-06-11     10:50       1450 target.lnk

PS C:\Users\bshacklett\AppData\Roaming\microsoft\windows\Network Shortcuts> cat .\BShacklett\desktop.ini

[.ShellClassInfo]
CLSID2={0AFACED1-E828-11D1-9187-B532F1E9575D}
Flags=2
bshacklett
fonte
Veja minha resposta superuser.com/a/456173/139371
Maximus

Respostas:

4

Não existe uma lista completa, mas o que você está vendo é chamado de "atalho de pasta" , uma pasta que se comporta como um atalho para outro objeto e não é documentado (pelo menos pela Microsoft).

Como você viu, é uma pasta comum que contém os arquivos desktop.inie target.lnk. O .lnkarquivo é um arquivo de atalho regular que deve ser nomeado target.lnke desktop.inicontém o seguinte:

[.ShellClassInfo]
CLSID2={0AFACED1-E828-11D1-9187-B532F1E9575D}
Flags=2

Você pode ver algumas informações sobre como ele é tratado pelo Explorer na seguinte entrada do Registro:

HKCR\CLSID\{0AFACED1-E828-11D1-9187-B532F1E9575D}

Eles agem essencialmente como um alias para uma pasta, exceto que eles não assumem automaticamente o layout da pasta real. Ou seja, se você ativar e dimensionar as colunas em uma pasta, crie um atalho para a pasta; abrir a pasta por meio do atalho permitirá que você veja o conteúdo real da pasta original, mas a configuração das colunas (e outras atributos como posição da janela etc.) serão os padrões, não os personalizados - abrir a pasta original por meios regulares (diretamente, atalho de arquivo etc.) exibirá a mesma com as personalizações.

Como você pode imaginar, pelo fato de o identificador de classe usado para criar atalhos de pasta apontar para shell32.dll, eles são resolvidos apenas pelo Explorer e são tratados como diretórios comuns pelo interpretador de comandos (e pelo PowerShell).

Na maioria das vezes, eles não são usados ​​na prática, mas podem ser úteis e são quase um alias, o que é bom, porque versões mais antigas do Windows (como ME, 2000 e XP) não suportam alguns tipos de alias, se é que existem. Uma maneira de serem criados automaticamente pelo Explorer é quando você arrasta uma pasta para o Menu Iniciar. Quando você arrasta uma pasta para outra pasta, a barra Início Rápido, etc., é criado um atalho de arquivo comum para a pasta, mas quando você o arrasta para o Menu Iniciar, é criado um atalho de pasta que permite um submenu (ou seja, expansível).

Uma coisa a observar é que, embora você possa usá-los para criar menus expansíveis, eles se comportam apenas dessa maneira em um nível. Portanto, criar um atalho de pasta para uma pasta, colocá-lo em outra pasta e, em seguida, criar um atalho para essa pasta e colocá-lo em um menu não permitirá que você crie um menu expansível em três níveis. Em vez disso, o que você verá é um menu que contém uma pasta que se expande para mostrar outra pasta que se expande para mostrar um atalho chamado target.

Synetech
fonte
Pouca correção - 2000 e XP suportam junções (elas foram introduzidas com a versão NTFS que acompanha o 2000). No entanto, eles não eram compatíveis com links simbólicos - eles vinham com o Vista. Presumivelmente, 'atalhos de pastas' funcionam em versões do Windows baseadas em DOS (3.1 [?], 95, 98, ME) (e mais recentes).
Bob
@ Bob, obrigado; Eu removi o termo junção para simplificá-lo e esclarecer o ponto. Os atalhos de pasta funcionavam em ME e acima (pelo menos de acordo com o livro; eu ainda não testei).
Synetech 02/02
Huh, eu estava esperando que existisse pelo menos 98SE. Por outro lado, eu nem sabia sobre atalhos de pasta antes da sua resposta.
Bob
1

Existem Shortcutssimplesmente *.lnkarquivos e Junction/ Hard link/ Symbolic linkobjetos NTFS. Não os misture.

Shortcutspode ser direcionado para Paths(arquivos e pastas) e PIDL's(que não são editáveis ​​na interface do Explorer).

Maximus
fonte
1

Além dos 4 tipos que o @Maximus listou, existe um quinto tipo, que são atalhos de sistema "especiais" definidos no registro.

Exemplos disso incluem coisas como as "bibliotecas" no Windows 7, fontes, impressoras etc.

.lnk e Junctions são específicos do Windows (partição NTFS). Links rígidos e simbólicos também são encontrados em muitos outros sistemas de arquivamento, incluindo todos os UNIX, como sistemas operacionais (Linux, BSD, Mac, etc.).

Links simbólicos e físicos podem ser configurados apenas na linha de comando com ferramentas nativas do Windows. Mas há um excelente complemento do Windows Explorer que permite a criação deles. As junções podem ser criadas na linha de comando ou no utilitário de disco do Painel de Controle do Windows. Os links Lnk são específicos do Windows Explorer.

Eu prefiro usar links simbólicos para a maioria dos propósitos. Eles funcionam bem com ambientes mistos de SO e funcionam com a maioria dos softwares Windows.

Julian Knight
fonte
Além disso, os links simbólicos são muito mais consistente com backup / arquivamento de ferramentas que podem ser contadas para segui-los (I haven, t ouviu falar de qualquer coisa seguindo os links LNK)
PPC
Você tem alguma opinião sobre o tipo de atalho que mencionei no meu post? A pasta com o arquivo target.lnk?
bshacklett
@PPC: É muito improvável que alguém que não seja o próprio Windows Explorer entenda seguir os links do tipo .lnk.
Julian Knight
@bshacklett: Meu laptop com Windows está quebrado no momento, então não posso investigar mais. Você já tentou abrir o target.lnk com um editor de texto para ver o que há dentro? Eu acho que o Maximus forneceu as informações sobre esse tipo de link.
Julian Knight
@JulianKnight: No Windows, é muito difícil abrir os arquivos lnk, porque o Windows Explorer tenta segui-los e abrir o destino. Para fazer isso, a solução mais simples que conheço é usar um sistema não Windows. Ou você pode clicar com o botão direito do mouse em> propriedades, ele fornecerá a maioria do que você deseja saber.
PPC