VS2008-Setup-Projekt erfordert immer .NET 3.5 zum Zeitpunkt der Installation, aber ich brauche es nicht!

StackOverflow https://stackoverflow.com/questions/68561

  •  09-06-2019
  •  | 
  •  

Frage

1, Erstellen und bauen ein Standard-Windows Forms-Projekt und schauen Sie sich die Projekteigenschaften. Er sagt, dass das Projekt .NET Framework 2.0 Verbreitung.

2, Erstellen Sie ein Setup-Projekt, das nur die einzigen ausführbaren installiert aus dem Windows Forms-Projekt.

3, ausführen, das Installationsprogramm, und es sagt immer, dass es muss .NET 3.5 SP1 auf dem Computer installieren. Aber es ist offensichtlich nur wirklich braucht, 2.0 und so will ich nicht Kunden gezwungen werden .NET 3.5 zu installieren, wenn sie es nicht brauchen. Sie könnten bereits 2.0 installiert haben und so zwingt das Upgrade ist nicht erwünscht!

Ich habe an den Voraussetzungen des Setup-Projekts angesehen und überprüft das .NET Framework 2.0 Eintrag und der ganze Rest sind nicht markiert. So kann ich keinen Grund für diese seltsame Laufzeit Anforderung finden. Jeder weiß, wie diese zu lösen?

War es hilfreich?

Lösung

Keine Notwendigkeit, die Datei manuell zu bearbeiten. Der Hinweis ist knapp über dem GUID es: „Launch“

.
  1. Rechtsklick auf das Setup-Projekt
  2. Wählen Sie "Ansicht" -> "Startbedingungen"
  3. Erweitern Sie den „Startbedingungen“ Knoten, wenn es nicht bereits erweitert ist
  4. Rechtsklick auf das ".NET Framework" Knoten und wählen Sie "Eigenschaften-Fenster"
  5. Im Fenster "Eigenschaften" den "Version" Wert auf den entsprechenden Wert ändern, in Ihrem Fall 2.0.50727.

Ich bin mir nicht sicher, warum dies nicht in geeigneter Weise von Anfang an gesetzt.

Andere Tipps

Auch wenn Sie eine 2.0-Bereitstellung Targeting, könnten einige Ihrer Baugruppen 3.5 erfordern. Zum Beispiel erfordert LINQ 3.0. Dies sollte jedoch berücksichtigt werden, wenn Sie zu bauen. Überprüfen Sie jede Baugruppe, um sicherzustellen, dass es 2.0 kompatibel. Sie wollen nicht irgendwelche 3.5 Dinge schleichen. Wenn dies der Fall ist, wäre meine Vermutung mit Unterstützung für WPF eine 3rd-Party-Control-Bibliothek sein.

Schließlich fand ich die Antwort auf meine eigene Frage.

die Projekte Dateien Vergleich Editor ich, dass ein Setup-Projekt in VS2008 bemerkte einen Eintrag hat, die Version 3.5 und der gleiche Abschnitt in dem VS2005-Projekt fordert als 2.0 markiert. Was seltsam ist, dass der Abschnitt wie etwas aussieht Sie nicht manuell in der Visual Studio-Umgebung verändern kann und so sind Sie gezwungen, manuell die Projektdatei zu aktualisieren. Überall hier ist der säumige Bereich der Projektdatei für diejenigen, die über das gleiche Problem kommt ...

"Deployable"
{
    "CustomAction"
    {
    }
    "DefaultFeature"
    {
    "Name" = "8:DefaultFeature"
    "Title" = "8:"
    "Description" = "8:"
    }
    "ExternalPersistence"
    {
        "LaunchCondition"
        {
            "{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_FC497D835F7243569DCCC3E3ACE4196D"
            {
            "Name" = "8:.NET Framework"
            "Message" = "8:[VSDNETMSG]"
            "Version" = "8:3.5.30729"  <--- UPDATE THIS TO 8:2.0.50727
            "AllowLaterVersions" = "11:FALSE"
            "InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=76617"
            }
        }
    }

Ich habe immer ınnosetup verwendet meine Projekte zu implementieren. Es ist sehr schnell und sehr anpassbar. Es gibt fast nichts, was man mit einem bisschen Scripting nicht tun kann. Innosetup kann erkennen, welche Version des Framework installiert ist, und fordert den Benutzer auf, wenn die richtige Version nicht vorhanden ist (mit Scripting).

Ich empfehle Ihnen, alternative Bereitstellungstools wie ınnosetup versuchen und sehen, wenn Sie sie mögen. Es gibt eine Fülle von Chance gibt.

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