2013-01-10 22 views
8

Sto provando a distribuire un'applicazione WPF utilizzando ClickOnce.
Il framework di destinazione del progetto è: ".NET Framework 4.5".
nelle proprietà del progetto VS -> “Pubblica” -> “Prerequisiti” Ho controllato due elementi:ClickOnce non installa .NET 4.5

  • “Microsoft .NET Framework 4.5 (x86 e x64)”
  • “Windows Installer 4.5”

Quando provo a lanciare questa applicazione su un computer Windows 7 che non hanno .NET 4.5 preinstallato ricevo un popup dicendo:

System Update Required Unable to install or run this application. This application requires Version 4.5 Full or other compatible .NET Framework. Please contact your system administrator.

L'installazione non tenta di scaricare/installare il framework per me. Semplicemente rinuncia a visualizzare questo messaggio. L'utente client che esegue l'installazione ClickOnce dispone dei privilegi di amministratore sulla macchina.

Perché ClickOnce non installa .NET 4.5 automaticamente?

+0

Il criterio di gruppo sulla macchina impedisce l'installazione? – ChrisF

+0

Le macchine sono ospitate in un dominio Windows nella nostra rete aziendale. Non sono un esperto di politica di gruppo, ma il nostro responsabile delle operazioni IT mi ha detto che non avevano stabilito restrizioni speciali. Non ho provato a riprodurre questo problema su nessun computer esterno al nostro dominio. Forse lo farò in un secondo momento o forse qualcun altro qui può dirmi se ottengono gli stessi risultati che ho fatto durante l'aggiornamento? – SteffenSH

risposta

0

Non visto prima, ma sembra che il client abbia già installato .NET, ma la versione "lite" del profilo del client? due modi per aggirare questo:

  1. Se è possibile, cambiare il target build per .NET 4.5 Cliente e ricostruire il prodotto (riceverete errori se si sta chiamando in quello che Microsoft considera componenti "server" del quadro
  2. Se davvero non si può fare a meno della versione completa di .NET, rimuovere la versione client dalla macchina e riprovare?

Questo aiuto?

+0

In .NET 4.5, hanno eliminato il profilo del client. C'è solo una installazione di .NET 4.5, quella completa. http://msdn.microsoft.com/en-us/library/cc656912(v=vs.110).aspx – Scott

2

Ho omesso di menzionare nella mia domanda che stavo aggiornando da un'altra applicazione ClickOnce con prerequisiti su .NET4.

I prerequisiti ClickOnce vengono valutati solo alla prima installazione, quindi per eseguire l'aggiornamento a .NET4.5 ho seguito una tecnica descritta con here. Cioè la vecchia applicazione si disinstalla e quindi avvia l'installazione della nuova applicazione ClickOnce con i nuovi prerequisiti su .NET4.5.

 Process.Start("iexplore.exe", newClickOnceApplicationUrl); 
     Application.Current.Shutdown(); 

Alcune macchine hanno ottenuto il messaggio di errore (“Si prega di contattare l'amministratore di sistema.”) E alcuni installati ok senza problemi. Sulle macchine che hanno avuto l'errore ha funzionato bene se l'URL ClickOnce è stato avviato manualmente.

Tutti gli utenti che eseguono l'installazione facevano parte del gruppo Administrators per il proprio computer locale. La mia teoria è che il processo iexplorer.exe lanciato da ClickOnce non è stato eseguito con privilegi di amministratore sulle macchine che hanno avuto il problema. Non ho indagato ulteriormente su questo.

+0

Sì, è una risposta alla mia domanda ... o almeno qualcosa nella direzione di una risposta;) – SteffenSH

1

La reinstallazione dell'applicazione dovrebbe risolvere il problema.

I prerequisiti ClickOnce dell'applicazione vengono controllati e, se necessario, eseguiti quando si installa l'applicazione sulla macchina, e non quando si avvia un'applicazione .NET già installata.

0

Un po 'di ciò che questo errore sembra familiare !!!

Hai provato a farlo ???

Nella finestra di dialogo Prerequisiti, assicurarsi che la casella di controllo Crea programma di installazione per l'installazione dei componenti prerequisiti sia selezionata.

Nella sezione "Specificare il percorso di installazione per i prerequisiti", selezionare Download prerequisiti dal seguente percorso.

Selezionare una posizione dall'elenco a discesa o immettere un URL, percorso file o percorso FTP, quindi fare clic su OK.

http://msdn.microsoft.com/en-us/library/8st7th1x(v=vs.100).aspx

-1

Effettuare le seguenti

Scarica .NETFramework 4,5 fullinstaller qui DOTNETFRAMEWORK 4.5

quindi copiarlo in questa directory

C: \ Program Files \ Microsoft SDK \ Windows \ v8 .0A \ Bootstrapper \ Packages \ DotNetFX45

quindi pulisci il tuo progetto e ricostruisci di nuovo poi pubblicato .. funzionerà ora .. per favore fammi sapere se risolvi il problema con la mia risposta

2

Ho avuto lo stesso problema con un'applicazione che era stata impostata su target .net framework 4.0 in passato. Innanzitutto ho appena aggiornato la piattaforma di destinazione su .net framework 4.5, tuttavia il programma di installazione ClickOnce non ha aggiornato i prerequisiti.

Quello che dovevo fare era Proprietà progetto -> Pubblica -> Prerequisiti -> Modifica da .net framework 4 a .net framework 4.5. Quindi 4.5 è stato installato durante la distribuzione.

Problemi correlati