Frage zu DLL/Gegenseitige Bereitstellung von Funktionen



  • Windows verwendet einmal CreateProcess und einmal LoadLibrary!
    Die Funktionsweisen sind komplett unterschiedlich.

    Also das glaube ich nämlich garnicht. Es sind beides bloss PE Images. Die werden in den Speicher geladen, dann werden weitere Dependencies aufgelöst wodurch evtl. weitere PE Images geladen werden etc.

    Der einzige Unterschied ist IMO dass beim Starten einer .EXE vorher ein "leerer" Prozess angelegt wird, und beim nachladen von Dependencies eben diese in den "aktuellen" Prozess geladen werden.

    Davon abgesehen habe ich schon diese Situation gemeint:

    A.EXE importiert (statisch) X@B.DLL
    B.DLL importiert (statisch) Y@A.EXE


  • Mod

    Wenn man nur ds Laden der PE-Images betrachtet ist das Verhalten des Laders identisch.
    Der extreme Unterschied ist was verbunden ist mit dem Starten eines Prozesses und dem Laden einer DLL!

    Dise Abhängigkeit, die Du aufzeigst müsste gelöst werden können.

    Was in keinem Fall geht:
    Prozess X lädt statisch oder dynamisch die B.DLL, denn diese benötigt A.EXE!


Anmelden zum Antworten