Procedura: utilizzare ClickOnce per distribuire applicazioni eseguibili in più versioni di .NET Framework
È possibile distribuire un'applicazione destinata a più versioni di .NET Framework tramite la tecnologia di distribuzione ClickOnce. Ciò richiede che si generino e aggiornino i manifesti dell'applicazione e della distribuzione.
Nota
Prima di modificare l'applicazione in modo che sia destinata a più versioni di .NET Framework, è necessario verificare che l'applicazione venga eseguita con più versioni di .NET Framework. Il Common Language Runtime della versione di .NET Framework 4 è diverso da quello di .NET Framework 2.0, .NET Framework 3.0 e .NET Framework 3.5.
Questo processo richiede l'esecuzione dei passaggi seguenti:
Generare i manifesti dell'applicazione e della distribuzione.
Modificare il manifesto della distribuzione in modo da elencare le diverse versioni di .NET Framework.
Modificare il file app.config in modo da elencare le versioni del runtime di .NET Framework compatibili.
Modificare il manifesto dell'applicazione in modo da contrassegnare gli assembly dipendenti come assembly di .NET Framework.
Firmare il manifesto dell'applicazione.
Aggiornare e firmare il manifesto della distribuzione.
Per generare i manifesti dell'applicazione e della distribuzione
- Utilizzare la Pubblicazione guidata o la pagina Pubblica di Progettazione progetti per pubblicare l'applicazione e generare i file dei manifesti dell'applicazione e della distribuzione. Per ulteriori informazioni, vedere Procedura: pubblicare un'applicazione ClickOnce mediante la Pubblicazione guidata o Pagina Pubblica, Progettazione progetti.
Per modificare il manifesto della distribuzione in modo da elencare le diverse versioni di .NET Framework
Nella directory di pubblicazione aprire il manifesto della distribuzione mediante l'editor XML in Visual Studio. L'estensione di file del manifesto della distribuzione è .application.
Sostituire il codice XML compreso tra gli elementi <compatibleFrameworks xmlns="urn:schemas-microsoft-com:clickonce.v2"> e </compatibleFrameworks> con codice XML che elenca le versioni di .NET Framework supportate per l'applicazione.
Nella tabella seguente vengono illustrate alcune delle versioni di .NET Framework disponibili e il codice XML corrispondente che è possibile aggiungere al manifesto della distribuzione.
Versione di .NET Framework
XML
4 client
<framework targetVersion="4.0" profile="Client" supportedRuntime="4.0.30319" />
4 completa
<framework targetVersion="4.0" profile="Full" supportedRuntime="4.0.30319" />
3.5 client
<framework targetVersion="3.5" profile="Client" supportedRuntime="2.0.50727" />
3.5 completa
<framework targetVersion="3.5" profile="Full" supportedRuntime="2.0.50727" />
3.0
<framework targetVersion="3.0" supportedRuntime="2.0.50727" />
Per modificare il file app.config in modo da elencare le versioni del runtime di .NET Framework compatibili
In Esplora soluzioni aprire il file App.config mediante l'editor XML in Visual Studio.
Sostituire (o aggiungere) il codice XML compreso tra gli elementi <startup> e </startup> con codice XML che elenca i runtime di .NET Framework supportati per l'applicazione.
Nella tabella seguente vengono illustrate alcune delle versioni di .NET Framework disponibili e il codice XML corrispondente che è possibile aggiungere al manifesto della distribuzione.
Versione del runtime di .NET Framework
XML
4 client
<supportedRuntime version="v4.0.30319" sku=".NETFramework,Version=v4.0,Profile=Client" />
4 completa
<supportedRuntime version="v4.0.30319" sku=".NETFramework,Version=v4.0" />
3.5 completa
<supportedRuntime version="v2.0.50727"/>
3.5 client
<supportedRuntime version="v2.0.50727" sku="Client"/>
Per modificare il manifesto dell'applicazione in modo da contrassegnare gli assembly dipendenti come assembly di .NET Framework
Nella directory di pubblicazione aprire il manifesto dell'applicazione mediante l'editor XML in Visual Studio. L'estensione di file del manifesto della distribuzione è .manifest.
Aggiungere group="framework" al codice XML della dipendenza per gli assembly sentinel (System.Core, WindowsBase, Sentinel.v3.5Client e System.Data.Entity). Ad esempio, il codice XML potrebbe essere simile al seguente:
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true" group="framework">
Aggiornare il numero della versione dell'elemento <assemblyIdentity> per Microsoft.Windows.CommonLanguageRuntime al numero della versione di .NET Framework che rappresenta il minimo comune denominatore. Ad esempio, se l'applicazione è destinata a .NET Framework 3.5 e a .NET Framework 4, utilizzare il numero di versione 2.0.50727.0. Il codice XML dovrebbe essere simile al seguente:
<dependency> <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"> <assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50727.0" /> </dependentAssembly> </dependency>
Per aggiornare e firmare nuovamente i manifesti dell'applicazione e della distribuzione
- Aggiornare e firmare nuovamente i manifesti dell'applicazione e della distribuzione. Per ulteriori informazioni, vedere Procedura: ripetere la firma dei manifesti dell'applicazione e di distribuzione.
Vedere anche
Riferimenti
Elemento <compatibleFrameworks> (distribuzione ClickOnce)
Elemento <dependency> (applicazione ClickOnce)
Manifesto di distribuzione ClickOnce
Concetti
Pubblicazione di applicazioni ClickOnce