Mit der MSI-Einrichtung können Sie einfach Startmenü Verknüpfung für Ihre Anwendung erstellen. Wenn es jedoch zur benutzerdefinierten Installation des Installationsprogramms kommt, müssen Sie benutzerdefinierten Code schreiben, um die Verknüpfung Alle Programme zu erstellen. In C # können Sie eine Verknüpfung mithilfe der Windows Script Host-Bibliothek erstellen.
Hinweis: Um die Windows Script Host-Bibliothek zu verwenden, müssen Sie unter Referenzen & gt; COM-Tab & gt; Windows Script Host-Objektmodell .
Siehe diesen Artikel für weitere Informationen: Ссылка
Verknüpfung nur für aktuellen Benutzer erstellen :
%Vor%Verknüpfung für alle Benutzer erstellen :
Sie können den allgemeinen Profilpfad für alle Benutzer abrufen, indem Sie die API-Funktion SHGetSpecialFolderPath verwenden.
%Vor%Dies ist ungefähr dasselbe wie diese Frage: Verknüpfung auf Desktop-C # erstellen .
Um von dieser Antwort zu kopieren, müssen Sie die Verknüpfungsdatei selbst erstellen.
%Vor%Dieser Code ist natürlich nicht getestet, aber er wurde bei dieser anderen Frage akzeptiert und sieht richtig aus.
Ich sehe eine andere Antwort zu dieser Frage, die auflistet, wie man es mit der Windows-API und einem COM-Interop macht, aber Ich wäre versucht, davor zurückzuschrecken und den obigen Code zu verwenden, wenn es funktioniert. Es ist mehr persönliche Vorliebe als alles andere, und normalerweise würde ich dafür nur eine vordefinierte API verwenden, aber wenn die Lösung so einfach ist, bin ich mir nicht sicher, wie es sich wirklich lohnt. Aber zum guten Ton glaube ich, dass dieser Code funktionieren sollte. Natürlich ist es natürlich noch nicht getestet. Und besonders hier, wo Sie mit solchen Dingen spielen, vergewissern Sie sich, dass Sie jede Zeile verstehen, bevor Sie sie ausführen. Ich würde es hassen zu sehen, dass du etwas in deinem System durcheinander bringst wegen einer blinden Gefolgschaft, die ich auf den Code gesetzt habe.
%Vor%Sie benötigen natürlich auch einen Verweis auf das "Windows Script Host Object Model", das Sie unter "Add a Reference" und dann "COM" finden.