Rubrik: OLE/Registry/DLL · Verknüpfungen | VB-Versionen: VB2005, VB2008, VB2010 | 23.03.12 |
Verknüpfung in den WindowsSpecialFolder erstellen (.NET) Mit dieser Funktion ist es möglich, beliebige Dateiverknüpfungen in den SpezialFoldern zu erstellen. | ||
Autor: Dierk | Bewertung: | Views: 20.464 |
ohne Homepage | System: WinXP, Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Hier möchte ich einen Weg zeigen, wie sich auf einfache Weise Verknüpfungen zu einer Datei erstellen lassen. Die bekanntesten Verknüpfungen sind wohl die auf dem Desktop. Hier reicht ein Doppelklick auf das Icon, und die verknüpfte Datei wird geladen. Dies geht natürlich in vielen weiteren Ordnern. Z.b. kann es recht nützlich sein sein Programm im "SendTo" Ordner eintragen zu lassen.
''' <summary> ''' Erstellt eine Verknüpfung in einem der Windows SpecialFolder ''' </summary> ''' <param name="ShortCutTarget">Ziel das verknüft werden soll</param> ''' <param name="ShortCutFolder">SpecialFolder in dem die Verknüfung erstellt wird</param> ''' <param name="ShortCutName">Name der Verknüpfung</param> ''' <param name="OKMsgBox">Statusmeldung bei erfolgreichem erstellen?</param> ''' <param name="ShortCutIconPfad">Pfad zum Icon der Verknüpfung</param> ''' <param name="ShortCutDescription">Beschreibung</param> ''' <returns></returns> ''' <remarks></remarks> Function CreateShortCut(ByVal ShortCutTarget As String, _ ByVal ShortCutFolder As Environment.SpecialFolder, _ ByVal ShortCutName As String, _ Optional ByVal OKMsgBox As Boolean = False, _ Optional ByVal ShortCutIconPfad As String = "", _ Optional ByVal ShortCutDescription As String = "") As Boolean Try ' Das Shell-Objekt des Windows Script Hosts erstellen Dim WSHShell As Object = CreateObject("WScript.Shell") ' Speicherziel der Verknüpfung (Erweiterung *.lnk muss mit angegeben werden) Dim Folder As String = Environment.GetFolderPath(ShortCutFolder) & _ "\" & ShortCutName & ".lnk" ' Anlegen des ShortCut Dim ShortCut As Object = WSHShell.CreateShortcut(Folder) With ShortCut ' Ziel der Verknüpfung .TargetPath = ShortCutTarget ' Pfad zum Icon der Verknüpfung If ShortCutIconPfad <> "" Then .IconLocation = ShortCutIconPfad ' Beschreibung der Verknüpfung If ShortCutDescription <> "" Then .Description = ShortCutDescription ' Speichern .Save() End With ' Objekte zerstören WSHShell = Nothing ShortCut = Nothing ' wenn gewollt OK Meldung absetzen If OKMsgBox = True Then MsgBox("Der ShortCut wurde erstellt.") Return True Catch ex As Exception MsgBox("Der ShortCut konnte nicht erstellt werden.") Return False End Try
Beispiel:
Um eine Verknüpfung der eigenen .exe auf dem Desktop zu erstellen.
CreateShortCut(Application.ExecutablePath, _ Environment.SpecialFolder.Desktop, "Meine_exe", True, "D:\Mein.ico")