reine Neugierde
Soviel ich weiß is das unmöglich, weil bei jeder .Net-sprache der code zuerst in die IL Compiliert wird und dann der Jit-Compiler beim ersten aufruf des Programmes das Programm richtig Compiliert.
Dann is da noch die GarbageCollection die dir das Speichermanagement abnimmt.
Außerdem sind alle Standardklassen in .net im Framework enthalten.
mfg
Luke
>wäre es irgendwie möglich aus c# eine Win32 (native Code) EXE zu erstellen ???
Ja, precompilieren mit NGEN. Da IL aber der Maschine gegenüber sehr flexibel ist, würde ich NGEN erst während der Installation starten(auf dem Ziel).
Vorteile: schnellerer Start und so, ist es das erste Net-Programm(bei Start) muss trotzdem der ganze Frameworkkram erst hochgefahren werden(lohnt sich nicht bei kleinen Anwendungen, die sowieso meist von XCopy-Deployment eher profitieren).
Nachteile:
Echten "nativen Code" wirst du nicht erzeugen können, das wär auch nicht Sinn von .Net, .Net ist Abstraktion nicht Konkret. Bei nativen Code unter Windows(oder anderen, auch älteren OS) findest du inzwischen auch Abstraktionen(sonst müsste deine App. jede Grafik-, Sound- etc. -Karte anders behandeln(ja die App, wieso das das OS...). Abstraktion macht schon alles langsamer(ausser richtiges Rechnen). Aber ohne wär schnelle Hardware sinnlos(weil nicht mehr beherrschbar, in ihrer Vielfalt).
Wir Arbeiten eigendlich nicht wir nehmen nur das geld
Mit XenoBuild geht es:
http://www.xenocode.com/Products/Postbuild/Features.aspx
Native x86 executable generation: Compiles assemblies into native x86 executables, allowing .NET applications to run immediately on machines without the Framework installed.