Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

aus c++ auf einen record in einer Pascal dll zugreiffen

pyranha / 5 Antworten / Flachansicht Nickles

Hi
Ich habe eine in Pascal geschriebene DLL, in der sich ein record befindet. Auf diesen Record möchte ich aus meiner C++ Applikation zugreifen. Ist das überhaupt möglich? Bisher hab ich es nur fertiggebracht, in der dll einen Pointer auf eine Struktur von meiner C++ Applikation zu erstellen.


Ich währe auch schon über ein Buchtip zu diesem Thema dankbar, da ich nichts schlaues gefunden habe.


Danke und Gruss
pyranha

bei Antwort benachrichtigen
Andreas42 pyranha „Hey, danke für deine Hilfe. Du hast mich richtig verstanden, der selbe...“
Optionen

Hi!

Ich weiss nicht, ob man das überhaupt ohne Dokumentation feststellen kann. Eien Typendeklaration ist ja abstrakt und wird AFAIK nicht in das erzeugte Programm eingebunden (IMHO ist die Debuginfo hier max. eine Verweis auf eine Zeile im Quelltext, ich bin mir da aber nicht sicher).

Ohne die genaue Deklaration kann man da IMHO nichts machen.

Hast du die Deklaration, dann müsste man an Hand der einzelnen Elemente herausfinden können, welche Datentypen verwendet werden und wie gross die sind.

Evtl. wäew noch eine indirekte Möglichkeit denkbar: falls ein Debugger das kann, müsste man den freien Speicher überwachen können. Ich weiss allerdings nicht, ob das mit aktuellen CPUs und Betriebssystemen machbar ist.
falls der Debugger die Möglichkeit bietet auf ASM-Code ebene zu debuggen, müsste man damit auch in die DLL hineindebuggen können, allerdings dürfte das mit die schlechteste Lösung sein.

Für weitere Tipps müsstest du noch posten, mit welchem C++ Compiler die genau arbeitest (und mit welchem Debugger; die genaue Version wäre nötig). Evtl. liest ja jemand mit, der sich in diesen Untiefen auskennt. ;-)

Meine ERfahungen auf dieser Ebene der Programmierung stammen noch aus 64er Zeiten, da werde ich nicht besonders gut weiterhelfen können. ;-)

Bis denn
Andreas

Hier steht was ueber mein altes Hard- und Softwaregedoens.
bei Antwort benachrichtigen