Einzelnen Beitrag anzeigen

RPRI

Registriert seit: 11. Feb 2003
Ort: A-6710 Nenzing
24 Beiträge
 
#1

Zugriffsverletzung beim Aufruf einer c.dll

  Alt 27. Jan 2011, 09:44
Delphi-Version: 5
Hallo Delphi Guru's !

Ich haben folgendes Problem.

Ich rufe bei einem Click Ereignis eines Button's ein Funktion eier C.dll auf.
Dies funktioniert einwandfrei
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
VAR
  VarPointer : POINTER;
  varInfo : VARIABLE_INFO;
begin
    M1_Read ( MyTarget, varInfo, VarToRead, VarPointer, SVI_Debug );
    Edit1.Text := MakeString ( VarPointer, varInfo );
end;
Ich möchte nun zyklisch mit einem Timer diese Funktion alle 500ms aufrufen.
Dabei bekomme ich schon beim ersten Aufruf eine Zugriffsverletzung in der C.dll.
Was mir aufgefallen ist, daß der VarPointer bei Aufruf mit Fehlermeldung nur 3Stellig ist ( $113 )
beim funktionierenden Aufruf aber 6Stellig ( $12F584 ).
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
VAR
  VarPointer : POINTER;
  varInfo : VARIABLE_INFO;
begin
    M1_Read ( MyTarget, varInfo, VarToRead, VarPointer, SVI_Debug );
    Edit1.Text := MakeString ( VarPointer, varInfo );
end;
Hat jemand eine Erklärung was ich falsch mache?
Es ist ja der identische Code!

Danke für Eure Hilfe
Rainer
Holm und Rippe,
bis zur Kippe !

Rainer

http://members.aon.at/p-51
  Mit Zitat antworten Zitat