Frage

Ich habe in einigen der Clickonce-Beiträge lesen, die Clickonce nicht zulässt, dass ein Desktop-Symbol für Ihre Anwendung zu erstellen. Gibt es eine Möglichkeit, um dieses?

War es hilfreich?

Lösung

In Visual Studio 2005, Clickonce hat nicht die Fähigkeit, ein Desktop-Symbol zu schaffen, aber es ist jetzt in Visual Studio 2008 SP1 verfügbar. In Visual Studio 2005 können Sie den folgenden Code verwenden, um ein Desktop-Symbol für Sie zu erstellen, wenn die Anwendung gestartet wird.

Ich habe für ein paar Monate jetzt ohne Probleme diesen Code über mehrere Projekte verwendet. Ich muss sagen, dass alle meine Anwendungen sind über ein Intranet in einer kontrollierten Umgebung im Einsatz. Außerdem wird das Symbol nicht entfernt, wenn die Anwendung deinstalliert wird. Dieser Code erstellt eine Verknüpfung zu der Verknüpfung auf dem Startmenü, die Clickonce erstellt.

private void CreateDesktopIcon()
{
    ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;

        if (ad.IsFirstRun)
        {
            Assembly assembly = Assembly.GetEntryAssembly();
            string company = string.Empty;
            string description = string.Empty;

            if (Attribute.IsDefined(assembly, typeof(AssemblyCompanyAttribute)))
            {
                AssemblyCompanyAttribute ascompany =
                  (AssemblyCompanyAttribute)Attribute.GetCustomAttribute(
                    assembly, typeof(AssemblyCompanyAttribute));

                company = ascompany.Company;
            }
            if (Attribute.IsDefined(assembly, typeof(AssemblyDescriptionAttribute)))
            {
                AssemblyDescriptionAttribute asdescription =
                  (AssemblyDescriptionAttribute)Attribute.GetCustomAttribute(
                    assembly, typeof(AssemblyDescriptionAttribute));

                description = asdescription.Description;
            }
            if (!string.IsNullOrEmpty(company))
            {
                string desktopPath = string.Empty;
                desktopPath = string.Concat(
                                Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                "\\",
                                description,
                                ".appref-ms");

                string shortcutName = string.Empty;
                shortcutName = string.Concat(
                                 Environment.GetFolderPath(Environment.SpecialFolder.Programs),
                                 "\\",
                                 company,
                                 "\\",
                                 description,
                                 ".appref-ms");

                System.IO.File.Copy(shortcutName, desktopPath, true);
            }
        }
    }
}

Andere Tipps

Es scheint, als ob es eine Möglichkeit ist ein Symbol auf dem Desktop in Clickonce zu stellen.

  1. Upgrade auf Visual Studio 2008 SP1, und es wird ein ein Symbol auf dem Desktop Kontrollkästchen in der Optionsseite des Abschnitts des Projekts Eigenschaftenfenster veröffentlichen platziert.
  2. Die zweite Option ist Code in Ihre Anwendung, die kopiert die Verknüpfung auf dem Desktop auf dem ersten Lauf der Anwendung hinzuzufügen. Sehen Sie sich die Blog-Post Wie Desktop-Verknüpfung zu Clickonce-Bereitstellung-Anwendung hinzufügen .

Das Desktop-Symbol kann eine Verknüpfung zu der .application-Datei sein. Installieren Sie dieses als eines der ersten Dinge, die Anwendung der Fall ist.

In Visual Studio 2017 und 2019 Sie folgendes tun:

Gehen Sie

Projekteigenschaften -> Veröffentlichen -> Manifest und wählen Sie die Option Desktop-Verknüpfung erstellen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top