2008 Progetto di Installazione richiede sempre .NET 3.5 al momento dell'installazione, ma io non ne ho bisogno!
-
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?
Soluzione
Non c'è bisogno di modificare manualmente il file.Il suggerimento è appena sopra il GUID c':"LaunchCondition".
- Fare clic destro sul progetto di installazione
- Selezionare "Visualizza" -> "Condizioni Di Avvio"
- Espandere la sezione "Condizioni di Avvio" del nodo, se non è già espanso
- Fare clic destro ".NET Framework" nodo "e selezionare "Proprietà"della Finestra di
- 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.