Autor Beitrag
Ex0rzist
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 550

Win XP Prof.
Mandrake 10.0

D6
BeitragVerfasst: Sa 17.08.02 16:51 
Hallo Leute,

ich habe ein Problem mit einer DLL-Funktion. Und zwar habe ich eine DLL geschrieben, die aus einem übergebenen Text ein zweidimensionales Array erzeugt und dieses dann zurückgeben soll.

Das übergeben klappt ja noch, aber sobald die Funktion den Wert zurückgeben soll, kommt eine Zugriffsverletzung.

Kann das mit der Speicheradressierung zusammenhängen?
Muss man dort mit Pointern arbeiten?

Ich hoffe, ihr könnt mir da weiterhelfen. :?

EDIT: Ich habe jetzt einfach mal eine DLL geschrieben, die ein eindimensionales Array entgegennimmt und auch ein solches zurückgibt.
da kommt auch dieser Fehler.
Weiss jemand von euch, wie man einer DLL ein Array übergeben muss?
Bei mir sieht die Funktion der DLL zur Zeit so aus:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
...
[b]type[/b]
 EinDim = Array [1..10] of Integer;

...

function Modifiziere(Matrix1: EinDim):EinDim;
begin
 // Modifikation des Arrays
end;
...


Ist das so vom Prinzip richtig?
_________

Ex0rzist
Ex0rzist Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 550

Win XP Prof.
Mandrake 10.0

D6
BeitragVerfasst: Sa 17.08.02 22:58 
Hat sich erledigt. :)

Mein Problem war, dass ich Schusselkopp das stdcall; hinter der Function in der DLL vergessen hatte. :roll: