Ein häufiges Problem für viele Programmierer ist das Erstellen von Dateiverknüpfungen - sei es auf dem Desktop, im Startmenü unter Programme oder in einem x-beliebigen Ordner auf der Festplatte. Bei dieser Art von Verknüpfung handelt es sich um sogenannte Link-Dateien (*.lnk), über welche man per Doppelklick eine bestimmte Anwendung aktivieren kann. Nun, so schwer ist das ganze eigentlich nicht. Denn Microsoft hat u.a. auf der VB-Installations CD eine undokumentierte TLB-Datei bereitgestellt, mit der sich solche Verknüpfungen relativ leicht erstellen lassen. Hierbei handelt es sich um die SHELLLNK.TLB. Sollten Sie diese nicht finden, so können Sie sich die Datei auch hier bei uns downloaden: SHELLLNK.TLB (6 KB) Und so funktioniert's: ' Verknüpfung erstellen Public Sub CreateLink(ByVal Datei As String, _ ByVal LinkName As String, _ Optional ByVal Parameter As String = "", _ Optional ByVal Comment As String = "", _ Optional ByVal WorkingDir As String = "" Optional ByVal IconPath As String = "", _ Optional ByVal IconNumber As Long = 0) Dim cShellLink As ShellLinkA Dim cPersistFile As IPersistFile Set cShellLink = New ShellLinkA Set cPersistFile = cShellLink With cShellLink ' Pfad+Dateiname der Anwendung .SetPath Datei ' Parameter If Parameter <> "" Then _ .SetArguments Parameter ' Kommentar If Comment <> "" Then _ .SetDescription Comment ' Arbeitsverzeichnis (Ausführen in) If WorkingDir <> "" Then _ .SetWorkingDirectory WorkingDir ' Icon definieren If IconPath <> "" And IconNumber > 0 Then _ .SetIconLocation IconPath, IconNumber End With ' Verknüpfung erstellen cPersistFile.Save StrConv(LinkName, _ vbUnicode), 0 Set cPersistFile = Nothing Set cShellLink = Nothing End Sub Parameterbeschreibung:
Beispiel: ' Verknüpfung zum Windows-Editor im ' Root-Verzeichnis von C: mit dem Namen test.lnk CreateLink "c:\winnt\notepad.exe", "c:\test.lnk" Erweiterung des Tipps Wie man den genauen Pfad der System-Ordner ermittelt, haben wir Ihnen ja bereits in einem früheren Tipp gezeigt. Deshalb hier nur der Verweis auf den Tipp: Standard System-Ordner ermitteln So lässt sich z.B. eine Verknüpfung auf dem Desktop folgendermassen erstellen: CreateLink "c:\winnt\notepad.exe", _ GetSpecialFolder(sfidDESKTOP) & "\MeinNotepad.lnk" Und hier der Aufruf, bei dem für die Verknüpfung das 22. Bildsymbol der Datei Moricons.dll verwendet werden soll: CreateLink "c:\winnt\notepad.exe", "c:\Test.lnk", _ , , , "C:\WINNT\system32\moricons.dll", 22 Ab sofort sollte das Erstellen von Dateiverknüpfungen also keine Probleme mehr bereiten Dieser Tipp wurde bereits 85.928 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevZIP40 Pro DLL Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Tipp des Monats März 2024 Dieter Otter UTF-8 Konvertierung von Dateien und Strings VB6 selbst verfügt über keine Funktionen zur UTF-8 Konvertierung von Daten. Mit Hilfe des ADODB.Stream-Objekts lassen sich diese fehlenden Funktionen aber schnell nachrüsten. TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |