ATALHOS

ADRIANO 23/03/2004 00:52:09
#16528
Ola amigos!

Por favor alguém sabe como criar atalhos com vb?

Tem um exemplo no site, mas ele usa uma dll.

Gostaria de um código que não use API.

Se alguém souber algum... Por favor.

Desde já agradeço.

Adriano D. Mà¼ller
USUARIO.EXCLUIDOS 23/03/2004 02:00:07
#16533
Resposta escolhida
Qual o tipo de atalho? Onde deseja criar o atalho?

Bom em 1º lugar, Infelizmente você sempre terá de recorrer para apis para criar um lnk (atalho), mas se for um atalho para internet (URL) você só precisa de um arquivo de texto e do caminho do atalho.

OBS.: Você pode fazer um URL para um objeto no próprio computador, ou seja, o atalho pode referir-se à  um programa no computador onde o atalho se encontra... Veja:http://www.vbmania.com.br/vbmdetail.php?varID=143, usando essa função da seguinte forma:
 CreateHyperlink(DesktopPath", App.Path & "/" & App.Title & ".exe")


Mas para se criar um atalho do tipo (lnk) se não for direto pela api, vai ser por script o WScript da Microsoft. Veja:

Dim WSHShell
Set WSHShell = CreateObject("WScript.Shell")

O "WScript.Shell" é uma DLL (ou LIB, não sei bem) só que ao inves de ser usada APIs para ter acesso a ela cria-se o objeto. Veja um exemplo do seu uso:

Dim WSHShell
Set WSHShell = CreateObject("WScript.Shell")
Dim MyShortcut, MyDesktop, DesktopPath
DesktopPath = WSHShell.SpecialFolders("Desktop")
Set MyShortcut = WSHShell.CreateShortcut(DesktopPath & "\Atalho para Bloco de notas.lnk")
MyShortcut.TargetPath = WSHShell.ExpandEnvironmentStrings("%windir%
otepad.exe")
MyShortcut.WorkingDirectory = WSHShell.ExpandEnvironmentStrings("%windir%")
MyShortcut.WindowStyle = 4
MyShortcut.IconLocation = WSHShell.ExpandEnvironmentStrings("%windir%
otepad.exe, 0")
MyShortcut.Save


Fora esses métodos só mesmo o que você já viu, que usa APIs.
Tópico encerrado , respostas não são mais permitidas