Heute möchten wir Ihnen zeigen, wie man mit Windows-Boardmitteln ohne zusätzliche API oder TLB-Datei eine beliebige Verknüpfung erstellen kann. Hierzu bedienen wir uns der Shell32.dll, die Windows von Haus aus bereitstellt Aktivieren Sie zunächst den Verweis Microsoft Shell Controls And Automation (Shell32.DLL) und fügen nachfolgende Funktion in das Codefenster Ihrer Form oder eines Moduls ein: ' Verknüpfung erstellen über das Shell-Objekt (Shell32.dll) Public Function CreateShortcut(ByVal sLinkFile As String, _ ByVal sTargetFile As String, _ Optional ByVal sArguments As String, _ Optional ByVal sDescription As String, _ Optional ByVal sWorkingDir As String) Dim oShell As New Shell32.Shell Dim oFolder As Shell32.Folder Dim oLink As Shell32.ShellLinkObject Dim sPath As String Dim sFile As String Dim F As Integer ' Ordner und Dateiname extrahieren sPath = Left$(sLinkFile, InStrRev(sLinkFile, "\") - 1) sFile = Mid$(sLinkFile, InStrRev(sLinkFile, "\") + 1) ' Link-Datei mit 0 Bytes erstellen, da die ' LNK-Datei bereits voranden sein muss! F = FreeFile Open sLinkFile For Output As #F: Close #F Set oFolder = oShell.NameSpace(sPath) Set oLink = oFolder.Items.Item(sFile).GetLink ' Eigenschaften der Verknüpfung With oLink If sArguments <> "" Then .Arguments = sArguments If sDescription <> "" Then .Description = sDescription If sWorkingDir <> "" Then .WorkingDirectory = sWorkingDir .Path = sTargetFile ' Verknüpfung speichern .Save End With ' Objekte zerstören Set oLink = Nothing Set oFolder = Nothing Set oShell = Nothing End Function Um nun eine Verknüpfung zu erstellen, rufen Sie die Funktion wie folgt auf: ' Verknüpfung "test.lnk" im Ordner ' "d:\temp" erstellen CreateShortcut "d:\temp\test.lnk", App.Path & "\" & App.EXEName & ".exe" Dieser Tipp wurde bereits 34.806 mal aufgerufen.
Anzeige
![]() ![]() ![]() (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. |
Neu! sevCommand 4.0 ![]() Professionelle Schaltflächen im modernen Design! Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Tipp des Monats ![]() Dieter Otter Beliebige Zeichen am Anfang und Ende eines Strings entfernen Mit der Trim-Funktion lassen sich nicht nur Leerzeichen, sondern bei Bedarf auch beliebige Zeichen entfernen. Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
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. |