H
heilongma
Unregistered / Unconfirmed
GUEST, unregistred user!
执行时,报错‘volid pointer operation’
初学动态连接库,按部就班,DLL已经顺利生成,可是调用的时候,出现以上错误!请指教
代码如下:
DLL部分
; ; ; ; ; { MYDLL.DPR}
;library mydll;
uses
; dialogs;
;
function Hobbit (value:integer): string; export;
; ; ; ; ; begin
; ; ; ; ; case value of
; ; ; ; ; 1: result := 'Frodo';
; ; ; ; ; 2: result := 'Samwise';
; ; ; ; ; 3: result := 'Pippin';
; ; ; ; ; 4: result := 'Meriadoc';
; ; ; ; ; else
; ; ; ; ; result := 'Must be an Orc!';
; ; ; ; ; end;
; ; ; ; ; end;
; ; ; ; ;exports
; ; ; ; ;hobbit index 1;
; ; ; ; ; begin
; ; ; ; ; end.
调用部分
unit Unit1;
; ; ; ; ;interface
; ; ; ; ; uses
; ; ; ; ; SysUtils, WinTypes, WinProcs, Messages, Classes,
; ; ; ; ; Graphics, Controls,
; ; ; ; ; Forms, Dialogs, StdCtrls;
; ; ; ; ; type
; ; ; ; ; TForm1 = class(TForm)
; ; ; ; ; Button1: TButton;
; ; ; ; ; Memo1: TMemo;
; ; ; ; ; procedure Button1Click(Sender: TObject);
; ; ; ; ; ;private
; ; ; ; ; { Private declarations }
; ; ; ; ; public
; ; ; ; ; { Public declarations }
; ; ; ; ; end;
; ; ; ; ; var
; ; ; ; ; Form1: TForm1;
; ; ; ; ; implementation
; ; ; ; ; function Hobbit (value:Integer):string; external 'mydll.dll'
; ; ; ; ; index 1;
; ; ; ; ; {$R *.DFM}
; ; ; ; ; procedure TForm1.Button1Click(Sender: TObject);
; ; ; ; ; begin
; ; ; ; ; ; ; Memo1.lines.add(Hobbit(2));
; ; ; ; ; end;
; ; ; ; ; end.
初学动态连接库,按部就班,DLL已经顺利生成,可是调用的时候,出现以上错误!请指教
代码如下:
DLL部分
; ; ; ; ; { MYDLL.DPR}
;library mydll;
uses
; dialogs;
;
function Hobbit (value:integer): string; export;
; ; ; ; ; begin
; ; ; ; ; case value of
; ; ; ; ; 1: result := 'Frodo';
; ; ; ; ; 2: result := 'Samwise';
; ; ; ; ; 3: result := 'Pippin';
; ; ; ; ; 4: result := 'Meriadoc';
; ; ; ; ; else
; ; ; ; ; result := 'Must be an Orc!';
; ; ; ; ; end;
; ; ; ; ; end;
; ; ; ; ;exports
; ; ; ; ;hobbit index 1;
; ; ; ; ; begin
; ; ; ; ; end.
调用部分
unit Unit1;
; ; ; ; ;interface
; ; ; ; ; uses
; ; ; ; ; SysUtils, WinTypes, WinProcs, Messages, Classes,
; ; ; ; ; Graphics, Controls,
; ; ; ; ; Forms, Dialogs, StdCtrls;
; ; ; ; ; type
; ; ; ; ; TForm1 = class(TForm)
; ; ; ; ; Button1: TButton;
; ; ; ; ; Memo1: TMemo;
; ; ; ; ; procedure Button1Click(Sender: TObject);
; ; ; ; ; ;private
; ; ; ; ; { Private declarations }
; ; ; ; ; public
; ; ; ; ; { Public declarations }
; ; ; ; ; end;
; ; ; ; ; var
; ; ; ; ; Form1: TForm1;
; ; ; ; ; implementation
; ; ; ; ; function Hobbit (value:Integer):string; external 'mydll.dll'
; ; ; ; ; index 1;
; ; ; ; ; {$R *.DFM}
; ; ; ; ; procedure TForm1.Button1Click(Sender: TObject);
; ; ; ; ; begin
; ; ; ; ; ; ; Memo1.lines.add(Hobbit(2));
; ; ; ; ; end;
; ; ; ; ; end.