AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

AccessViolation-Error mit DLL

Ein Thema von jamma-markus · begonnen am 15. Jan 2006 · letzter Beitrag vom 17. Jan 2006
 
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#12

Re: AccessViolation-Error mit DLL

  Alt 17. Jan 2006, 06:35
So, jetzt habt ihr mich so weit ("auf die Palme") gebracht, das ich ne Demo geschrieben habe. Und ... wer hätte das gedacht ... es geht (via Pointer).
Und wer es nicht glaubt, der sauge sich bitte den Anhang.

Natürlich funktioniert diese Vorgehensweise nur ganz sauber, wenn man für die DLL und das Programm den gleichen Compiler und die gleichen Units verwendet.

Und noch ein Wort zu Objekten und Pointern. Eine Objektreferenz ist ungleich der Adresse im Speicher. Das was Integer(Objekt) liefert ist nur eine ID, die innerhalb der VCL-Umgebung eines bestimmten Programms gültig ist. Somit kann ich nicht diese ID an eine DLL übergeben, da diese ja in einer anderen Umgebung läuft. Dagegen ist die Adresse des Objektes im Speicher eindeutig.
Angehängte Dateien
Dateityp: zip bitbtnassassin_164.zip (447,1 KB, 10x aufgerufen)
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz