Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Unterschied zw. einer Win32 EXE und einer .NET EXE (https://www.delphipraxis.net/97198-unterschied-zw-einer-win32-exe-und-einer-net-exe.html)

bixi400 6. Aug 2007 17:05


Unterschied zw. einer Win32 EXE und einer .NET EXE
 
Hallo,

Die Win32 Anwendungen führen ja Funktionen aus verschiedenen DLLs aus (z.B. gdi32, user32,...).

Ist das bei den .NET Anwendungen genau so, nur das sie eben andere DLLs benutzen,
oder sind diese EXE-Dateien grundlegend anderst aufgebaut?

Phoenix 6. Aug 2007 17:19

Re: Unterschied zw. einer Win32 EXE und einer .NET EXE
 
.NET .Echsen sind grundlegend anders aufgebaut.

Native .Echsen werden in den Speicher geladen und direkt als Ausführbarer Code an die CPU übergeben. Die ganzen Dll Calls werden dann direkt durch den Exe-Programmcode ausgeführt.

Bei .NET .Echsen wird nur der Header direkt ausgeführt. Diese übergibt den Rest der .exe an die .NET Runtime. Das mag das .NET Framework unter Windows oder z.B. auch MONO unter Linux sein.
Die Runtime compiliert dann die in der .Exe vorhandene IL in ausführbaren Code und führt den dann in einer Art VM aus.

DGL-luke 6. Aug 2007 17:19

Re: Unterschied zw. einer Win32 EXE und einer .NET EXE
 
Eine .Net-Exe besteht nicht aus x86-Assembler-Bytecode, sondern aus IL(Intermediate Language)-Code. Dieser wird von .Net-Interpretern oder JIT-Compilern (.Net Runtime Framework, Mono, dotGNU) in Maschinencode überführt und ausgeführt.

Eingebunden werden nicht DLLs, sondern "Assemblies", die wiederum aus IL-Code bestehen (aber auch die Dateiendung ".dll" haben)

bixi400 6. Aug 2007 17:24

Re: Unterschied zw. einer Win32 EXE und einer .NET EXE
 
Danke für die Antworten!
Ist alles was ich wissen wollte.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz