Domanda

Esiste un approccio per convertire un'applicazione sviluppata in .NET in un eseguibile nativo (le fonti sono inclusi)?

L'installazione l'intero quadro (fino a .NET Framework 3.5 SP1) prende un sacco di tempo - non sempre i computer vengono aggiornati da internet. E 'possibile chiamare NGen al fine di produrre eseguibili indipendenti?

Grazie

Nessuna soluzione corretta

Altri suggerimenti

Non è ancora disponibile, ma il team di progetto Mono stanno lavorando su un prima del tempo compilatore che farà quello che stai cercando. L'intenzione è per Mono per lavorare su iPhone (come l'Unità), ma dovrebbe funzionare per tutte le piattaforme.

Modifica E 'supporta Mono X 86, ma non sono sicuro se hanno incluso la caratteristica che racchiude in classi che dipendono ancora (anche se da un'intervista che ho sentito, è previsto)

Modifica 2: Tra cui dipendenze è attualmente supportato, grazie Dykam

No, il codice NGen'd ha ancora bisogno di quadro - esso soltanto pre-JIT il codice nel proprio assemblee. Si richiede inoltre il quadro per il CLR stesso.

Mono ha un compilatore statico, che stanno pensando di usare per l'iPhone. Non so se questo funzionerà su Windows come bene però.

Ci deve essere utilizzato un prodotto chiamato Thinstall che alcune persone utilizzate per questo. E 'ora chiamato ThinApp - in fondo è l'applicazione di virtualizzazione. E 'commerciale, ma si può anche essere in grado di entrare in possesso di una versione di prova.

Personalmente sarei un po 'preoccupato per tale prodotto - quando si tratta di distribuzione, virando lontano dal modo tradizionale di fare le cose suona come una ricetta per un sacco di chiamate di assistenza. C'è solo un sacco ad andare male. Non sto dicendo che non funziona, solo che sarei diffidente.

Hai guardato al . Net Profile 3.5 (SP1) Cliente ? Questo può aiutare a ridurre i requisiti di installazione un po '.

Con .NET 3.5 SP1, è possibile installare un sottoinsieme più piccolo di .NET Framework. Date un'occhiata a questo screenshot: proprietà Studio progetto Visual
(fonte: windowsclient.net )

È possibile utilizzare NGen a rendere l'applicazione di un eseguibile nativo, ma sarà ancora dipendente dal framework .Net.

NGen compila i exes a exes nativi, in modo che non c'è bisogno di essere JIT compilato come vengono eseguiti. Sono ancora dipendente del quadro però.

Ci sono alcune aziende commerciali che fanno fornire prodotti per la compilazione assembly .NET in exes standalone. Xenocode e VMware ThinApp . Né sono a buon mercato però.

Alcuni obfuscators fare questo, si dovrebbe fare in anticipo anche se (prima che lo spediciate agli utenti). Un esempio è di remotesoft Salamander .

Sarà solo bisogno di installare la versione di .NET che si prendono di mira per esempio .NET1.1 o .NET2.0

Modifica : Se avete bisogno di indirizzare la versione 3.5 è necessario installare sia 2.0 e 3.5

ILMerge (libero) può combinare diversi assembly in una sola, ma non credo che funziona con i tempi di esecuzione di base.

In breve Penso che se si desidera eseguire programmi .NET è necessario il .NET Framework installato.

C'è un prodotto commerciale che pretende di farlo qui:

http://www.xenocode.com/Obfuscator/

"applicazioni .NET Distribuire in modo sicuro, senza installare .NET Framework"

Non ho idea di quello che gli svantaggi di questo sarebbe se

ThinApp (ex Thinstall) da VMware. Utilizzato per essere molto costoso, però.

http://www.vmware.com/products/thinapp/

L'unico prodotto abbiamo fondato per risolvere il problema nel 2007 è stato Xenocode Postbuild . Da quel momento usiamo questo prodotto con successo, usiamo anche le sue abbastanza buone caratteristiche di virtualizzazione.

L'unico problema è che la versione abbiamo acquistato non supportano il 7 di Windows (in cui non è necessario installare .net framework per eseguire il programma compilato con la versione <4.0). Così ho scritto a Xenocode. Hanno risposto

  

Al fine di ottenere il supporto per Windows 7 è necessario eseguire l'aggiornamento alla versione più recente di Postbuild (ora si chiama NET Obfuscator ). Win 7 non è una piattaforma supportata per Postbuild 2007.

Perché non Ngen.exe? http://msdn.microsoft.com/en- us / library / 6t9t5wcf (v = vs.80) aspx

Si converte .Net Programs in Native Programs anche e hai già se si dispone di .Net Framework

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top