Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Se si usa Internet Information Services (IIS) in Windows Server e la distribuzione contiene un tipo di file che Windows non riconosce, ad esempio un file di Microsoft Word, IIS rifiuterà di trasmettere tale file e la distribuzione non riuscirà.
Inoltre, alcuni server Web e software dell'applicazione Web, ad esempio ASP.NET, contengono un elenco di file e tipi di file che non è possibile scaricare. Ad esempio, ASP.NET impedisce il download di tutti i file Web.config . Questi file possono contenere informazioni riservate, ad esempio nomi utente e password.
Anche se questa restrizione non dovrebbe causare problemi per il download di file ClickOnce di base, ad esempio manifesti e assembly, questa restrizione potrebbe impedire il download di file di dati inclusi nell'applicazione ClickOnce. In ASP.NET è possibile risolvere questo errore rimuovendo il gestore che impedisce il download di tali file da Gestione configurazione IIS. Per altri dettagli, vedere la documentazione del server IIS.
Alcuni server Web potrebbero bloccare i file con estensioni quali .dll, .confige .mdf. Le applicazioni basate su Windows includono in genere file con alcune di queste estensioni. Se un utente tenta di eseguire un'applicazione ClickOnce che accede a un file bloccato in un server Web, verrà generato un errore. Anziché sbloccare tutte le estensioni di file, ClickOnce pubblica ogni file dell'applicazione con estensione deploy per impostazione predefinita. Pertanto, l'amministratore deve configurare solo il server Web per sbloccare le tre estensioni di file seguenti:
.applicazione
.manifesto
.distribuire
Tuttavia, è possibile disabilitare questa opzione deselezionando l'opzione Usa estensione file ".deploy" nella finestra di dialogo Opzioni di pubblicazione, nel qual caso è necessario configurare il server Web per sbloccare tutte le estensioni di file usate nell'applicazione.
Sarà necessario configurare .manifest, .application e .deploy, ad esempio, se si usa IIS in cui non è stato installato .NET Framework o se si usa un altro server Web , ad esempio Apache.
ClickOnce e Secure Sockets Layer (SSL)
Un'applicazione ClickOnce funzionerà correttamente su SSL, tranne quando il browser genera una richiesta relativa al certificato SSL. La richiesta può essere generata in caso di problemi con il certificato, ad esempio quando i nomi del sito non corrispondono o il certificato è scaduto. Per fare in modo che ClickOnce funzioni su una connessione SSL, assicurarsi che il certificato sia up-to-date e che i dati del certificato corrispondano ai dati del sito.
Autenticazione ClickOnce e proxy
ClickOnce offre supporto per l'autenticazione proxy integrata di Windows a partire da .NET Framework 3.5. Non sono necessarie direttive machine.config specifiche. ClickOnce non fornisce supporto per altri protocolli di autenticazione, ad esempio Basic o Digest.
È anche possibile applicare un hotfix a .NET Framework 2.0 per abilitare questa funzionalità. Per ulteriori informazioni, vedere Risoluzione: messaggio di errore quando si tenta di installare un'applicazione ClickOnce creata in .NET Framework 2.0 su un computer client configurato per l'uso di un server proxy: "Autenticazione proxy richiesta".
Per altre informazioni, vedere <elemento defaultProxy> (impostazioni di rete).
Compatibilità ClickOnce e Web browser
Attualmente, le installazioni ClickOnce verranno avviate solo se l'URL del manifesto della distribuzione viene aperto tramite il browser. Una distribuzione il cui URL viene avviato da un'altra applicazione, ad esempio Microsoft Office Outlook, verrà avviato correttamente solo se Internet Explorer è impostato come Web browser predefinito.
Annotazioni
Mozilla Firefox è supportato se il provider di distribuzione non è vuoto o l'estensione Microsoft .NET Framework Assistant è installata. Questa estensione viene inserita in un pacchetto con .NET Framework 3.5 SP1. Per il supporto XBAP, il plug-in NPWPF viene attivato quando necessario.
Attivare le applicazioni ClickOnce tramite script del browser
Se è stata sviluppata una pagina Web personalizzata che avvia un'applicazione ClickOnce usando Scripting attivo, è possibile che l'applicazione non venga avviata in alcuni computer. Il browser contiene un'impostazione, ad esempio La richiesta automatica di download di file, che influisce su questo comportamento. Questa impostazione del browser è in genere elencata sotto la categoria Download ed è abilitata per impostazione predefinita. Quando questa impostazione è disabilitata, qualsiasi tentativo di attivare un'applicazione ClickOnce a livello di codice (ad esempio, assegnandone l'URL document.location alla proprietà) verrà bloccato. In questa circostanza, gli utenti possono avviare applicazioni solo tramite un download avviato dall'utente, ad esempio facendo clic su un collegamento ipertestuale impostato sull'URL dell'applicazione.
Altri problemi di configurazione del server
Autorizzazioni di amministratore necessarie
Se si pubblica con HTTP, è necessario disporre delle autorizzazioni di amministratore nel server di destinazione. IIS richiede questo livello di autorizzazioni. Se non si esegue la pubblicazione con HTTP, è necessaria solo l'autorizzazione di scrittura per il percorso di destinazione.
Problemi di autenticazione del server
Quando si pubblica in un server remoto con "Accesso anonimo" disattivato, viene visualizzato l'avviso seguente:
"The files could not be downloaded from http://<remoteserver>/<myapplication>/. The remote server returned an error: (401) Unauthorized."
Annotazioni
È possibile fare in modo che l'autenticazione NTLM (NT challenge-response) funzioni se il sito richiede credenziali diverse dalle credenziali predefinite e, nella finestra di dialogo di sicurezza, fare clic su OK quando viene richiesto se si desidera salvare le credenziali specificate per le sessioni future. Tuttavia, questa soluzione alternativa non funzionerà per l'autenticazione di base.
Usare server Web di terze parti
Se si distribuisce un'applicazione ClickOnce da un server Web diverso da IIS, è possibile che si verifichi un problema se il server restituisce il tipo di contenuto non corretto per i file ClickOnce chiave, ad esempio il manifesto della distribuzione e il manifesto dell'applicazione. Per risolvere questo problema, consultare la documentazione di aiuto del server Web su come aggiungere nuovi tipi di contenuto al server e assicurarsi che tutti i mapping delle estensioni di file elencati nella tabella seguente siano presenti.
| Estensione del nome del file | Tipo di contenuto |
|---|---|
.application |
application/x-ms-application |
.manifest |
application/x-ms-manifest |
.deploy |
application/octet-stream |
.msu |
application/octet-stream |
.msp |
application/octet-stream |
ClickOnce e unità mappate
Se si usa Visual Studio per pubblicare un'applicazione ClickOnce, non è possibile specificare un'unità mappata come percorso di installazione. Tuttavia, è possibile modificare l'applicazione ClickOnce per eseguire l'installazione da un'unità mappata usando il generatore di manifesti e l'editor (Mage.exe e MageUI.exe). Per altre informazioni, vedere Mage.exe (strumento di generazione e modifica del manifesto) e MageUI.exe (strumento di modifica e generazione di manifesti, client grafico).
Protocollo FTP non supportato per l'installazione di applicazioni
ClickOnce supporta l'installazione di applicazioni da qualsiasi server Web HTTP 1.1 o file server. FTP, file transfer protocol, non è supportato per l'installazione di applicazioni. È possibile usare FTP solo per pubblicare applicazioni. La tabella seguente riepiloga le differenze seguenti:
| Tipo di URL | Description |
|---|---|
| Ftp:// | È possibile pubblicare un'applicazione ClickOnce usando questo protocollo. |
| http:// | È possibile installare un'applicazione ClickOnce usando questo protocollo. |
| https:// | È possibile installare un'applicazione ClickOnce usando questo protocollo. |
| file:// | È possibile installare un'applicazione ClickOnce usando questo protocollo. |
Windows Firewall
Per impostazione predefinita, Windows abilita Windows Firewall. Se si sviluppa l'applicazione in un computer in cui è installato Windows, è comunque possibile pubblicare ed eseguire applicazioni ClickOnce dal server locale che esegue IIS. Tuttavia, non è possibile accedere a tale server che esegue IIS da un altro computer, a meno che non si apre Windows Firewall. Per istruzioni sulla gestione di Windows Firewall, vedere Guida di Windows.
Windows Server: Abilitare le estensioni del server FrontPage
Le estensioni server di FrontPage di Microsoft sono necessarie per la pubblicazione di applicazioni in un server Web Windows che usa HTTP.
Per impostazione predefinita, Windows Server non ha installato le estensioni del server FrontPage. Se si desidera utilizzare Visual Studio per pubblicare in un server Web Windows Server che usa HTTP con le estensioni del server FrontPage, è prima necessario installare le estensioni del server FrontPage. È possibile eseguire l'installazione usando lo strumento Di amministrazione del server in Windows Server.
Windows Server: tipi di contenuto bloccati
IIS in Windows Server 2003 blocca tutti i tipi di file ad eccezione di determinati tipi di contenuto noti ( ad esempio, .htm, .html, .txte così via). Per abilitare la distribuzione di applicazioni ClickOnce tramite questo server, è necessario modificare le impostazioni iis per consentire il download di file di tipo .application, .manifest e qualsiasi altro tipo di file personalizzato usato dall'applicazione.
Se si distribuisce usando un server IIS, eseguire inetmgr.exe e aggiungere nuovi tipi di file per la pagina Web predefinita:
Per le estensioni .application e .manifest , il tipo MIME deve essere "application/x-ms-application". Per altri tipi di file, il tipo MIME deve essere "application/octet-stream".
Se si crea un tipo MIME con estensione "<em>" e il tipo MIME "application/octet-stream", consentirà il download di file di tipo non bloccato. I tipi di file bloccati, ad esempio *.aspx e *.asmx , non possono essere scaricati.
Per istruzioni specifiche sulla configurazione dei tipi MIME in Windows Server, vedere Come aggiungere un tipo MIME a un sito Web o a un'applicazione.
Mapping dei tipi di contenuto
Durante la pubblicazione su HTTP, il tipo di contenuto (noto anche come tipo MIME) per il file con estensione application deve essere "application/x-ms-application". Se nel server è installato .NET Framework 2.0, verrà impostato automaticamente. Se non è installato, è necessario creare un'associazione di tipi MIME per la vroot dell'applicazione ClickOnce (o l'intero server).
Se si distribuisce usando un server IIS, eseguire inetmgr.exe e aggiungere un nuovo tipo di contenuto "application/x-ms-application" per l'estensione .application .
Problemi di compressione HTTP
Con ClickOnce è possibile eseguire download che usano la compressione HTTP, una tecnologia server Web che usa l'algoritmo GZIP per comprimere un flusso di dati prima di inviare il flusso al client. Il client, in questo caso ClickOnce, decomprime il flusso prima di leggere i file.
Se si usa IIS, è possibile abilitare facilmente la compressione HTTP. Tuttavia, quando si abilita la compressione HTTP, è abilitata solo per determinati tipi di file, ovvero file HTML e di testo. Per abilitare la compressione per gli assembly (.dll), XML (.xml), i manifesti di distribuzione (applicazione) e i manifesti dell'applicazione(manifesto), è necessario aggiungere questi tipi di file all'elenco dei tipi per la compressione di IIS. Finché non si aggiungono i tipi di file alla distribuzione, verranno compressi solo i file HTML e di testo.
Per istruzioni dettagliate su IIS, vedere Come specificare tipi di documento aggiuntivi per la compressione HTTP.