Gibt es eine ideale Größe für ausführbare Module unter Windows?

8

Ich habe die .exe-Dateigröße vieler Anwendungen zur Kenntnis genommen.

Ich habe gesehen, dass Visual Studio 2005 eine .exe-Größe von 453 KB und VS2008 von 1,04 MB hat, weil sie die Anwendung in viele Teile (.exe + viele .dll-Dateien) unterteilt.

Ich sah auch, dass MS Outlook eine sehr große .exe-Datei (11.8MB) hat, während MS Word sehr klein ist (398KB)!

Nachdem ich über die Dinge nachgedacht hatte, die ich gesehen hatte, blieben mir folgende Fragen:

  1. Gibt es einen Vorteil, eine kleine .exe zu haben, selbst wenn die endgültige Größe der Anwendung (alle geladenen DLLs) viel größer ist?
  2. Und wenn ja, in welcher Größe ist es gut, eine Anwendung in einzelne Module aufzuteilen?
Wael Dalloul 16.08.2009, 11:32
quelle

3 Antworten

4

Eine große ausführbare Datei hat wahrscheinlich weniger Shared Libraries (weniger wiederverwendbarer Code), was bedeutet, dass die Anwendung wahrscheinlich speicherintensiver ist als eine Anwendung, die gemeinsam genutzte Bibliotheken verwendet. Wenn Sie ein System mit minimalem Speicherbedarf möchten, möchten Sie gemeinsam genutzte Bibliotheken.

Eine große exe ist wahrscheinlich in sich abgeschlossener, was es einfacher macht, eine stabile Bereitstellung aufrechtzuerhalten.

    
krosenvold 16.08.2009, 12:04
quelle
3

Als allgemeine Regel kann große Größe exe bedeuten, dass Sie alle Abhängigkeiten in einer einzigen Datei sammeln, also kein Abhängigkeitsproblem wie dll Hölle aber jedes Mal, wenn Sie etwas in kleinen Modul reparieren möchten, muss der Benutzer diese große exe herunterladen !!!

Auf der anderen Seite kleine exe es kann bedeuten, Sie modularisieren Sie Ihre Anwendung auf verschiedene Module, so ist es einfach zu pflegen und upgrade diese Module separat und Benutzer muss nicht die große Chunk exe herunterladen

    
Ahmed Said 16.08.2009 12:00
quelle
2

Diese Artikel:

  

Ein eingehender Einblick in das portable ausführbare Win32-Dateiformat

     

Teil 1 , Teil 2

Scheint eine sehr schöne Zusammenfassung des Dateiformats zu sein, das die ausführbaren Windows-Dateien (und DLLs) verwenden.

Soweit ich sehen konnte, erwähnt der Autor nirgends, ob eine bestimmte Größe für eine ausführbare Datei besser ist als eine kleinere / größere.

So könnte bedeuten, dass die Größe einer ausführbaren Datei für Windows nicht wirklich wichtig ist.

Andererseits denke ich , dass beim Öffnen einer ausführbaren Datei in Windows die Datei von Virenscannern (falls vorhanden) gescannt wird, bevor die Datei zur Ausführung an das Betriebssystem übergeben wird. Dieses könnte also bedeuten, dass eine größere ausführbare Datei eine längere Startzeit bei Vorhandensein einer Scan-Anwendung bedeutet.

    
Martin Ba 22.11.2011 11:42
quelle