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 35.277 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. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
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. |