Laden...

Dateiverknüpfungen erstellen

Erstellt von jeanfischer vor 15 Jahren Letzter Beitrag vor 15 Jahren 5.043 Views
J
jeanfischer Themenstarter:in
39 Beiträge seit 2007
vor 15 Jahren
Dateiverknüpfungen erstellen

Hallo zusammen,

ich möchte gerne mithilfe von C# Verknüpfungen von Dateien erstellen. Warum? Ganz einfach:
Ich benutze eine Anwendung, der man über die Eigenschaft "Ziel" im Reiter "Verknüpfungen" Attrribute übergeben kann. Da das ganze ziemlich kryptisch ist, hätte ich gern ein kleines Tool geschrieben, dass die Komplette Erstellung des Links (*.lnk Datei) übernimmt.
Wie kann man aber so einen Link erzeugen? Ich habe leider so weit nur Bsp. für VB gefunden, konnte die aber nicht auf C# ummünzen.

Vielen Dank für eure Hilfe!
jeanfischer

1.044 Beiträge seit 2008
vor 15 Jahren

Hallo jeanfischer,

mittels File.Create-Methode ist das möglich. Dazu musst du eine Datei erstellen mit den Dateinamen, Dateiformat und das Format .lnk am Ende. Hier ein Beispiel:

MeineDatei.exe.lnk würde eine Verknüfung zu einer anderen Datei erstellen. Weitere Informationen kannst du mittels C# und der File-Klasse hinzufügen oder mit Verwendung der API.

zero_x

4.931 Beiträge seit 2008
vor 15 Jahren

zero_x, so einfach ist das dann doch nicht...

Unter http://www.msjogren.net/dotnet/eng/samples/dotnet_shelllink.asp gibt es eine Implementation sowohl für vb.net als auch für C# (shelllink.zip runterladen), welche direkt auf der IShellLink-Schnittstelle aufbaut.

T
708 Beiträge seit 2008
vor 15 Jahren

Für diese Geschichte nutze ich die Interop.IWshRuntimeLibrary.dll
Damit ist es ebenfalls in ein paar Zeilen möglich eine Verknüpfung zu erstellen.

WShell shell = new WShell();
                        WShort link = (WShort)shell.CreateShortcut(SpecialDirectories.Desktop + "\\Visual Studio.lnk");
                        link.TargetPath = @"C:\Programme\Microsoft Visual Studio 8\Common7\IDE\devenv.exe";
                        link.Save();

Tada! Nun hast du eine VS Verknüpfung 🙂

J
jeanfischer Themenstarter:in
39 Beiträge seit 2007
vor 15 Jahren

Hallo zusammen,

vielen Dank für die Link. Mit dessen Hilfe habe ich es geschafft. Es ist aber nicht leicht zu verstehen für Anfänger. Daher meine Empfehlung für unerfahrene, lasst die Finger von einer solchen Idee. Alle anderen sollte das mal machen, man lernt doch eine Menge! Ist eine schöne Fingerübung. Ich habe allerdings darauf verzichtet allen neu zu schreiben und einfach die Beispieldateien includiert.

jeanfischer