2011-12-19 7 views
6

Sto utilizzando ClickOnce per distribuire un'applicazione C#. È disponibile solo online, quindi non posso disabilitare l'applicazione per controllare l'aggiornamento ogni volta che si avvia.Come velocizzare la finestra "Verifica dei requisiti dell'applicazione"?

Ogni volta quando viene lanciato da url, verrà visualizzata una finestra di "verificare esigenza applicativa". Questo va bene. Tuttavia, il tempo necessario per questa finestra scompare varia notevolmente. A volte è istantaneo, a volte ci vogliono alcuni secondi. Qualcuno sa perché questo è il caso e come accelerare questo processo di verifica?

Sto usando process p = Runtime.getRuntime().exec("explorer myURL") per avviare l'applicazione. Non so se è importante o c'è un modo migliore? (Sto lanciando questa applicazione da un'applicazione Java)

risposta

1

Ci sono un paio di ragioni per cui questo processo potrebbe richiedere alcuni secondi per l'esecuzione. Il primo è che se il server ClickOnce è occupato, potrebbe impiegare mezzo secondo o più per rispondere alla richiesta del file .application.

Inoltre, il file .application è essere analizzato e controllato dal software Microsoft Installer. Se l'applicazione Microsoft Installer non è caricata in memoria, il PC dovrà avviare quell'applicazione e passare il file .application. Questo potrebbe anche richiedere un secondo o due.

Infine, se tutto è up-to-data, verrà eseguita l'applicazione. Questo potrebbe richiedere uno o due secondi. Ogni passaggio può essere piuttosto breve, ma se si opera in uno scenario "worst case" per ogni passaggio, l'avvio dell'applicazione potrebbe richiedere 6-10 secondi. Probabilmente anche più lento se il server delle applicazioni ClickOnce è estremamente occupato.

Questa non è una soluzione, ma io sono abbastanza fiducioso che la risposta è che non si può accelerare questo processo. La migliore possibilità è assicurarsi che il tuo server Web ClickOnce sia connesso a una connessione dati rapida e che la connessione a Internet del tuo computer sia affidabile e anche veloce.

+0

grazie RLH. Segnalo come risposta – neo