2008 Progetto di Installazione richiede sempre .NET 3.5 al momento dell'installazione, ma io non ne ho bisogno!

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

  •  09-06-2019
  •  | 
  •  

Domanda

1, Creare un predefinito progetto Windows Form e guardare le proprietà del progetto.Si dice che il progetto è rivolto .NET Framework 2.0.

2, Creare un progetto di Installazione che installa solo il singolo file eseguibile dal progetto Windows Form.

3, Eseguire l'installer e mi dice sempre che è necessario installare .NET 3.5 SP1 sul computer.Ma, ovviamente, non ha davvero bisogno 2.0 e quindi non voglio che i clienti siano costretti ad installare .NET 3.5 quando non hanno bisogno di esso.Si potrebbe già avere 2.0 installato e quindi forzare l'aggiornamento non è auspicabile!

Ho guardato i prerequisiti del progetto di installazione e controllava il .NET Framework 2.0 voce e tutto il resto siano deselezionate.Quindi, non è possibile trovare qualsiasi motivo di questo strano runtime requisito.Qualcuno sa come risolvere questo?

È stato utile?

Soluzione

Non c'è bisogno di modificare manualmente il file.Il suggerimento è appena sopra il GUID c':"LaunchCondition".

  1. Fare clic destro sul progetto di installazione
  2. Selezionare "Visualizza" -> "Condizioni Di Avvio"
  3. Espandere la sezione "Condizioni di Avvio" del nodo, se non è già espanso
  4. Fare clic destro ".NET Framework" nodo "e selezionare "Proprietà"della Finestra di
  5. Nella finestra "Proprietà" per modificare la "Versione" valore per il valore appropriato, nel tuo caso 2.0.50727.

Io non sono sicuro perché questo non è impostato in modo appropriato dall'inizio.

Altri suggerimenti

Anche se si è rivolto ad un 2.0 distribuzione, alcune delle vostre assemblee potrebbe richiedere 3.5.Per esempio, LINQ richiede 3.0.Questo, tuttavia, devono essere applicate quando si genera.Controllare ogni assemblea al fine di garantire che è 2.0 compatibile.Non voglio 3.5 cose furtivamente.Se questo è il caso, la mia ipotesi sarebbe un 3rd party libreria di controllo con supporto per WPF.

Alla fine ho trovato la risposta alla mia domanda.

Confrontando i progetti di file utilizzando il blocco note ho notato che un progetto di installazione in VS2008 ha una voce che le richieste versione 3.5 e la stessa sezione in VS2005 progetto è stato contrassegnato come 2.0.Ciò che è strano è che la sezione appare come qualcosa che non è possibile modificare manualmente all'interno dell'ambiente Visual Studio e quindi sono costretto ad aggiornare il file di progetto manualmente.Ovunque qui è l'area incriminata del file di progetto per coloro che incontra lo stesso problema...

"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"
            }
        }
    }

Ho sempre usato Innosetup per distribuire i miei progetti.E ' molto veloce e molto personalizzabile.Non c'è quasi nulla che si può fare con un po ' di scripting.Innosetup può rilevare la versione del Framework è installato, e richiede all'utente se la versione corretta non è presente (con la creazione di script).

Mi consiglia di provare alternative di distribuzione di strumenti come Innosetup e vedere se ti piacciono.C'è una ricchezza di opportunità là fuori.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top