Que tipos diferentes de atalhos existem?

8

Tenho notado que o Windows parece ser capaz de criar vários tipos diferentes de atalhos. No momento, estou tentando entender um atalho de pasta que existe na pasta Atalhos de rede do meu perfil. No Windows Explorer, ele aparece como uma pasta com a sobreposição de atalhos, o Tipo listado é "Pasta de arquivos" e, ao clicar duas vezes, leva-me a um local de rede. Visualizá-lo no powershell mostra que é uma pasta e dentro dele é um arquivo "target.lnk".

Além disso, muitas vezes descubro que a janela Propriedades de outros atalhos não terá o campo "Destino". Acho que esses podem ser atalhos do Windows Installer. Excluindo Junções e Links Simbólicos, existem outros tipos de atalhos? Melhor ainda, existe alguma documentação que eu possa listar todos eles?

* edit: mais informações abaixo sobre o tipo de atalho com o qual estou mais preocupado.

O Explorer vê uma pasta (BShacklett) como um atalho. 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
    
por bshacklett 01.08.2012 / 20:49

3 respostas

4

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

Como você viu, é uma pasta normal que contém os arquivos desktop.ini e target.lnk . O arquivo .lnk é um arquivo de atalho regular que deve receber o nome target.lnk e o desktop.ini contém o seguinte:

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

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

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

Eles basicamente agem como um alias para uma pasta, exceto que eles não assumem automaticamente o layout do real. Isto é, se você ativar e dimensionar as colunas em uma pasta, então crie um atalho de pasta para ele, abrindo a pasta através do atalho da pasta permitirá que você veja o conteúdo real da pasta original, mas a configuração das colunas atributos como posição da janela, etc.) serão os padrões, não os personalizados - abrir a pasta original através de meios regulares (diretamente, atalho de arquivo, etc.) irá exibi-la com as personalizações.

Como você pode imaginar pelo fato de que o identificador de classe usado para criar atalhos de pasta aponta 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). / p>

Eles não são usados com frequência na prática, mas podem ser úteis e quase como um alias, o que é legal porque versões mais antigas do Windows (como ME, 2000 e XP) não suportavam bem alguns tipos de aliases, em absoluto. Uma maneira que eles são criados automaticamente pelo Explorer é quando você arrasta uma pasta para o menu Iniciar. Quando você arrasta uma pasta para outra pasta, a barra de Início Rápido, etc., um atalho de arquivo regular para a pasta é criado, mas quando você a arrasta para o Menu Iniciar, um atalho de pasta é criado, o que permite um submenu (ou seja, expansível).

Uma coisa a notar é que, enquanto você pode usá-los para fazer menus expansíveis, eles só se comportam como esse nível de profundidade. Portanto, criar um atalho de pasta para uma pasta, colocar isso em outra pasta, criar um atalho de pasta para a pasta que e colocá-lo em um menu não permitirá que você crie um menu expansível de três níveis . Em vez disso, o que você vai conseguir é um menu que contém uma pasta que se expande para mostrar outra pasta que se expande para mostrar um atalho chamado target .

    
por 02.09.2013 / 17:27
1

Existem Shortcuts que são simplesmente *.lnk arquivos e Junction / Hard link / Symbolic link que são objetos NTFS. Não misture-os.

Shortcuts pode ser destinado a Paths (arquivos e pastas) e PIDL's (que não são editáveis na interface do Explorer).

    
por 01.08.2012 / 20:56
1

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

Exemplos incluem coisas como "bibliotecas" no Windows 7, Fontes, Impressoras, etc.

.lnk e junções são Windows (partição NTFS) específica. Os links Hard e Symbolic também são encontrados em muitos outros sistemas de arquivamento, incluindo todos os sistemas operacionais semelhantes ao UNIX (Linux, BSD, Mac, etc.).

Os links Hard e Symbolic só podem ser configurados a partir da linha de comando com ferramentas nativas do Windows. Mas há um excelente suplemento do Windows Explorer que permite a criação deles. As junções podem ser criadas a partir da linha de comando ou do utilitário de disco do Painel de Controle do Windows. Links lnk são específicos do Windows Explorer.

Eu prefiro muito mais usar links simbólicos para a maioria das finalidades. Eles funcionam bem com ambientes de sistemas operacionais mistos e funcionam com a maioria dos softwares do Windows.

    
por 01.08.2012 / 23:54