Ich versuche, ein Programm in Assembly zu schreiben und die resultierende ausführbare Datei als klein wie möglich. Einige von dem, was ich tue, erfordert Windows-API-Aufrufe von Funktionen wie WriteProcessMemory. Ich hatte einige Erfolge mit dem Aufruf dieser Funktionen, aber nach dem Kompilieren und Verknüpfen kommt mein Programm im Bereich von 14-15 KB heraus. (Von einer Quelle von weniger als 1 KB) Ich habe auf viel, viel weniger gehofft.Windows-API-Aufrufe von Assembly bei gleichzeitiger Minimierung der Programmgröße
Ich bin sehr neu zu tun Low-Level-Dinge wie diese, so dass ich nicht wirklich weiß, was getan werden müsste, um das Programm kleiner zu machen. Ich verstehe, dass das exe-Format selbst ziemlich viel Platz in Anspruch nimmt. Kann etwas getan werden, um das zu minimieren?
Ich sollte erwähnen, dass ich NASM und GCC verwende, aber ich kann leicht ändern, wenn das helfen würde.
Schreiben Sie das gesamte Programm in Assembly? –
Aus persönlicher Neugier, in welcher Umgebung ist eine 15kb ausführbare Datei zu groß? – Nate
Ja, das gesamte Programm wird zusammengebaut. Was ich mache, ist eher eine persönliche Herausforderung als alles Praktische. – takteek