Thema: Prism DLL mit arry Übergabe

Einzelnen Beitrag anzeigen

heiopei
(Gast)

n/a Beiträge
 
#2

Re: DLL mit arry Übergabe

  Alt 9. Jan 2006, 18:49
hallo,

als erstes musst du im hauptprogramm natürlich die gleiche arraygröße haben...

Delphi-Quellcode:
var
  adresse : array [0..99] of TREC;

...

var
  adresse = array [1..99] of TREC;
dann kannst du nicht einfach im haputprogramm const, statt var schreiben, wenn du var in der dll definiert hast:

Delphi-Quellcode:
...
  procedure test(i:integer; var ???? TREC oder adresse );
..
  procedure test(i:integer; ??const ff: PTREC ); stdcall;
...
und den aufruf machst du so, wie du die prozedur definiert hast:

Delphi-Quellcode:
...
var
  testarr: TREC;
begin
  test(1, ^testarr);
...
end;
außerdem verstehe ich nicht, warum du in der dll-prozedur erst im array 0 was einträgst und dann im array 1 - ist das nur zur demo


evtl. solltest du noch genauer erklären, was du machen willst, denn du kannst z.b. statt dem übergeben des pointers auch einfach eine funktion mit result definieren..

mfg,
heiopei

ps: was macht der "parameter" unsafe?
  Mit Zitat antworten Zitat