Einzelnen Beitrag anzeigen

Benutzerbild von paule32.jk
paule32.jk

Registriert seit: 24. Sep 2022
Ort: Planet Erde
356 Beiträge
 
Delphi 11 Alexandria
 
#1

Delphi 7 32-Bit / C++ Builder 6 32-Bit / GNU C++ 64-Bit - Load 64-Bit in 32-Bit ?

  Alt 27. Jul 2023, 16:58
Hallo,

ich würde gerne .DLL Dateien, die ich mittels MinGW32 / MinGW64 erstellt habe unter Delphi 7 laden.
Aber wer das schonmal versucht hat, der kann auch (wie ich) auf Informationen im Internet stoßen,
die erklären, das in einen Laufenden 32-Bit Prozess, keine 64-Bit .DLL geladen werden kann.
Gleiches gilt natürlich auch in umgekehrter Richtung.

Dies ist ein Umstand, der unter Windows 10/11 (oder allen) besteht, und so dass (programmieren)
erschweren läßt ...

Nun habe ich gelesen, das man durch Verwendung von DCOM (eine Windows-Erfindung, die auf einer
weiterentwickelten *nix RPC (Remote Procedure Call) Basis erfunden wurden.
Das heißt, das man eigentlich nur unter Windows-Systeme dieses "alte" RPC-Protokoll nutzen kann.

Aber man hat doch schon unter Delphi 7 und dem C++ Builder 6 die Möglichkeit RPC in Form von
DCOM Modulen die beiden Welten 32 und 64-Bit unter Windows zu koppeln.

Leider ist es mir noch nicht gelungen, alle Welten durch die Pakete MingW32/64 zu koppelln, und ich
einen Workaround verkrätschung mache: Bison/Flex mittels GNU-C den C Code erstellen lasse, und den
erzeugten C-Code mittels C++ Builder 6 in einen reinen "nicht" mutithreading "C" Projekte übersetze
unf fie so erzeugte .DLL in den entsprechenden .EXE Ordner kopiere.

Ich würde in diesen Zusammenhang gerne die C++ (mit und ohne VCL) Möglichkeiten der C++ Builders
nutzen (weshalb ich vorerst meine Zeit vergeutet habe, das ganze per GNU 64-Bit zu erstellen).
Mir ist bewust, das es das Framework Qt5 gibt - aber das ist mir irgendwie in der Lizenzierung
zu suspect, und ich daher lieber auf "ältere" und "Eigene" Lösungen zugreife.

Naja, zurück:
Leider verweigert der C++ Builder reinen C Code im C++ Modus, und im C++ Modus C Code.
Ich würde das ganze mittels FPC erzeugen, aber das ist irgendwie umständlicher (und fätter) als
das gute (und mittlerweile freie) Delphi 7 - jedenfalls kann man es frei erhalten.

Zudem sind die Tools, die gerne nutzen möchte sehr viel älter (pyacc.exe und plex.exe), und
dadurch auch sehr beschränkt (was die moderne Anwendungsprogrammierung auch nicht gerade föderlich
dahstehen lässt).

Zusammenfassend:
- plex / pyacc sind zu alt, und beschränkt
- zur Zeit kann ich nur 32-Bit .EXE, und .DLL Daten verbinden

- würde mehr über DCOM erfahren, um ggf. die Welten zwischen 32 und 64 Bit sowie Windows und *nix
zu verstöpseln (kann auch erstmal mit lokalem Rechner erfolgen)
- würde dann ggf. auf Indy 9 aufsetzen (falls das besser ist)
Indy 9, weil ich da erstmal kein SSL brauche (das wird da auch so offiziell nicht unterstützt
und steht erst in der Version 10 zur Verfügung)

- für das RPC würde ich eine bestehende (Indy ähnliche) Bibliothek nutzen wollen, um bestehende
Merkmale (Bugs) nicht neu schreiben zu müssen

Vielleicht nen bissl viel Text bis hier hin - aber ich dachte, schreibst einfach mal, in welche
Richtung das gehen soll.

Mit freundlichen Grüßen
Euer paule
Frag doch einfach
  Mit Zitat antworten Zitat