Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#40

AW: 32bit-DLL mit LoadLibrary auf einem 64bit-System laden?

  Alt 16. Sep 2022, 21:17
In dem 64 Bit Prozess wurden sie bestimmt nicht genutzt,
aber man kann DLLs in einem 32 Bit-Prozess hosten und über eine Bridge damit reden.
Für sowas ist z.B. die dllhost.exe im Windows, jeweils als 32- und 64-Bit-Variante.
https://docs.microsoft.com/en-us/win...dll-surrogates

Dafür gab es auch was im CC
[add] http://cc.embarcadero.com/Item/27667

Es lässt sich die DLL zwar im anderem System laden, aber alle Zeiger und der Programmcode darin passen nicht, also kann natürlich auch keine Prozedur aufgeführt werden, selbst wenn GetProcAddress etwas geliefert hätte.
Also entweder man lässt den Code in 32 Bit laufen oder man braucht z.B. einen Emulator, welcher den Inhalt der Datei auf 64 Bit übersetzt.
https://stackoverflow.com/questions/...it-application


Bridges zwischen System nutzt Delphi an mehreren Stellen.
Delphi zu Java
Win32 zu UWP (z.B. vieles bezüglich BT oder rechts die Benachrichtigungen ist/waren nicht im Win32).
https://www.embarcadero.com/products...desktop-bridge
Und ja, Win64 nutzt die Win32-API (die Komponenten/Befehle/DLLs, welche genutzt werden, entsprechen der gleichen API)
$2B or not $2B

Geändert von himitsu (16. Sep 2022 um 21:33 Uhr)
  Mit Zitat antworten Zitat