Condivisione locale di un pacchetto di app (app di Windows Store)
Dopo avere sviluppato un'app di Windows Store, puoi installarla in uno o più computer locali per testarla o farla testare da altri. Prima di installare un'app di Windows Store in un altro computer, devi creare un pacchetto dell'applicazione ed eseguire uno script di Windows PowerShell.
Creare un pacchetto dell'applicazione
Prima di poter installare la tua applicazione, devi innanzitutto creare un pacchetto dell'applicazione. Per informazioni su come creare un pacchetto, vedi Creating an app package.
Il pacchetto dell'applicazione che crei si trova nella cartella di output specificata per la posizione del pacchetto e denominata PackageName_Test. La cartella contiene un file .appx, un certificato di sicurezza, uno script di Windows PowerShell e altri file.
Installa il pacchetto dell'applicazione per il test
Nella directory di output di Visual Studio individua lo script di PowerShell Add-AppDevPackage accanto al file appx.
Scegli Esegui con PowerShell dal menu di scelta rapida per il file Add-AppDevPackage.ps1.
Importante
Se sei un membro del gruppo di sicurezza Administrators sul computer locale non sei autorizzato ad accedere alla condivisione di rete in cui si trova il file Add-AppDevPackage.ps1, può venire visualizzato un messaggio di errore che indica il file script non esiste. Per aggirare il problema di accesso, copia il contenuto della cartella di output nel computer locale prima di eseguire lo script.
Lo script esegue automaticamente i seguenti passaggi.
Visualizza informazioni sul certificato che sarà installato dallo script. Lo script visualizza inoltre un messaggio di avviso sui rischi della modifica dei criteri di esecuzione sul computer locale. I criteri di esecuzione ti aiutano a proteggerti da script non attendibili. Se modifichi i criteri di esecuzione, potresti esporti ai rischi di sicurezza descritti in about_Execution_Policies.
Nota
Se hai avviato lo script direttamente da PowerShell anziché utilizzare il menu di scelta rapida non verrà visualizzato alcun avviso sui rischi di modifica dell'esecuzione e lo script non riuscirà. Per aggirare questo problema, modifica manualmente i criteri di esecuzione e quindi esegui di nuovo lo script.
Devi confermare che vuoi modificare i criteri di esecuzione immettendo Y. Se immetti N, ignorerai questa operazione e procederai all'operazione successiva. Se immetti S, interromperai la pipeline corrente e tornerai al prompt dei comandi. Se immetti la parola exit, la pipeline riprenderà.
Verifica la presenza o meno di una licenza per sviluppatori. Se lo script non trova una licenza o se la tua licenza corrente è scaduta, ti viene richiesto di ottenerne una.
Per ottenere una licenza per sviluppatori, devi possedere un account Microsoft. Per ulteriori informazioni, vedi l'articolo Ottenere una licenza per sviluppatori (app di Windows Store)
Verifica la presenza o meno di un pacchetto dell'applicazione e degli eventuali certificati necessari. Se gli elementi sono mancanti, un messaggio ti richiede di installarli prima dell'installazione di questo pacchetto di sviluppo. Ad esempio, se il certificato dello sviluppatore non è presente nel computer locale, ti verrà richiesto di installarlo. Verrai inoltre avvisato che l'installazione di un certificato digitale all'archivio di certificati Persone attendibili del computer rappresenta un grave rischio di sicurezza e che devi procedere solo se consideri attendibile il creatore di questo certificato digitale. Dopo aver finito di utilizzare l'app, devi rimuovere manualmente il certificato digitale associato dall'archivio certificati Persone attendibili del computer. Per informazioni su come rimuovere un certificato, vedi l'articolo su come utilizzare la console Certificati. Devi confermare se desideri continuare.
I certificati di firma devono contenere i valori seguenti:
Enhanced Key Usage: Code Signing (obbligatorio)
Basic Constraint: Subject Type=End Entity (obbligatorio)
Lifetime Signing EKU (facoltativo)
Qualsiasi altro EKU rende il certificato non valido. Se lo script non trova i valori richiesti, viene visualizzato un errore.
Verifica la presenza di tutti i pacchetti di dipendenza obbligatori.
Installa tutti i pacchetti di dipendenza e successivamente il pacchetto dell'applicazione.
Quando il pacchetto dell'applicazione è installato, visualizza: "Your developer package was successfully installed".
Nella schermata iniziale, scegli la sezione nella quale appare il nome della tua app.
L'app verrà avviata.
Nota sulla sicurezza |
---|
Se non riesci a eseguire lo script di PowerShell e nessun messaggio di errore ne indica il motivo, è possibile che il controllo dell'account utente sul computer sia stato modificato. L'impostazione predefinita del controllo dell'account utente è Notifica solo quando un'app tenta di eseguire modifiche nel computer (impostazione predefinita), ma puoi modificarla in Non notificare mai. Se utilizzi un account utente standard per accedere a un computer con il controllo dell'account utente impostato su Non notificare mai, tutte le modifiche che richiedono le autorizzazioni di amministratore verranno automaticamente negate. In queste circostanze, lo script di PowerShell si avvia, ma per continuare richiede le autorizzazioni di amministratore. La finestra di dialogo del controllo dell'account utente non viene visualizzata e Windows impedisce automaticamente allo script di apportare modifiche. Per risolvere il problema, modifica l'impostazione UAC o esegui lo script come amministratore. |
Quando esegui lo script di PowerShell Add-AppDevPackage.ps1, Visual Studio usa la funzione Get-AuthenticodeSignature per determinare se deve installare il certificato di firma del test TEST Visual Studio Certification Authority. Se il certificato di firma del test è già installato nel nodo Certificati – Utente corrente > Autorità di certificazione radice attendibili > Certificati, la funzione restituisce un valore che indica che la firma è valida. Tuttavia, non riuscirai ancora a distribuire il pacchetto perché Windows non ritiene attendibile il certificato. Affinché Windows ritenga attendibile il certificato, è necessario che quest'ultimo si trovi nel nodo Certificati (Computer locale) > Autorità di certificazione radice attendibili > Certificati o nel nodo Certificati (Computer locale) > Persone attendibili > Certificati. Solo i certificati che si trovano in queste due posizioni possono convalidare l'attendibilità del certificato nel contesto del computer locale. In caso contrario, compare un messaggio di errore simile alla stringa seguente: "Add-AppxPackage: Distribuzione non riuscita con HRESULT: 0x800B0109. Una catena di certificati elaborata correttamente termina in un certificato radice proveniente da un'Autorità di certificazione non presente nell'elenco locale. (Eccezione da HRESULT: 0x800B0109) errore 0x800B0109: il certificato radice della firma nel pacchetto dell'app deve essere attendibile." Se compare questo errore, spostare il certificato di firma del test in uno dei due nodi Certificati (Computer locale) appena descritti. Per informazioni su come spostare un certificato, vedi l'articolo su come utilizzare la console Certificati.
Vedere anche
Concetti
Firma di un pacchetto di app (app di Windows Store)
Compilazione del di un'app al prompt dei comandi (app di Windows Store)