Salut,
J'ai essayé de faire appel à une fonction foo.m contenue dans une DLL mylib.dll construite par Matlab,
Voici le code Matlab:
et voici le code Delphi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 function y = foo(x) y = 2*x
mais lors de l'exécution j'ai eu une exception:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 procedure TForm1.Button1Click(Sender: TObject); var a,b:double; DLLHandle: Thandle; foo: Function (Num:double):double; {$IFDEF WIN32} cdecl; {$ENDIF} begin DLLHandle := LoadLibrary('mylib.dll'); try @foo := GetProcAddress(DLLHandle, 'foo'); a:=StrToFloat(edit1.Text); b:=foo(a); edit2.Text:=FloatTostr(b); finally FreeLibrary(DLLHandle); end end;
je ne trouve pas de solution pour ce problème,Exception class EAccessViolation with message 'Access violation at address 00000000. Read of address 00000000'.
Merci d'avoir m'aider








Répondre avec citation




vous fournira également des pistes...


Partager