Come rilasciare le app .Net senza raggruppare il framework .Net?
Domanda
Ho uno strano requisito per spedire un'applicazione senza raggruppare .Net framework (per risparmiare spazio di memoria e larghezza di banda).
È possibile? I clienti possono avere o meno il runtime .Net installato sui loro sistemi.
Fare Ngen risolverà questo problema? Stavo cercando qualcosa come i buoni vecchi modi di rilasciare app C ++ (usando il linker per collegare solo i binari di cui hai bisogno).
Soluzione
Un'opzione senza usare Ngen potrebbe essere quella di rilasciare utilizzando .Net Framework 3.5 SP1 "Profilo cliente". Questo è un sottoinsieme del .Net Framework utilizzato per la creazione di applicazioni client che può essere scaricato come pacchetto separato, molto più piccolo.
Vedi i dettagli da Blog del team BCL qui e Scott Guthrie qui .
Altri suggerimenti
Soluzione comune in una situazione del genere, di fatto lo standard è che i tuoi clienti dovrebbero avere la versione corretta del framework .Net, non appena fa parte di Windows Update. Pertanto, il programma di installazione dovrebbe verificare la disponibilità di .NET della versione utilizzata sul computer client e proporre di scaricarlo da Microsoft. Ciò impedirà alla tua azienda di trasferirlo attraverso il tuo canale e garantirà che l'applicazione disponga di un'infrastruttura corretta,
hai controllato la salamandra? remotesoft
Solo FYI,
Questo argomento è già stato discusso. Purtroppo al momento non riesco a trovare il link (la ricerca SO dovrebbe essere migliorata).
Ok ho trovato una domanda simile:
Ricordo che c'era esattamente la stessa domanda, ma non riesco a trovarla :(
Se il tuo software richiede .NET, gli utenti finali avranno bisogno della stessa versione di .NET. Non puoi " link in " .NET nel tuo eseguibile per creare un singolo .exe, come puoi fare con MFC o Delphi. Se il tuo programma di installazione non installa il runtime .NET, dovrai assicurarti che l'utente sia a conoscenza di ciò e indirizzarlo al download .NET da Microsoft.
Puoi utilizzare " Profilo client " ;, è un sottoinsieme di .NET Framework per applicazioni desktop. La dimensione del profilo del cliente è di circa 20 MB
Puoi anche includere il bootstrapper 'setup.exe' che viene creato in VS. Rileverà se hai la versione .net necessaria e, in tal caso, avvia il programma di installazione; in caso contrario, ti verrà richiesto di scaricare il framework.