delphi调用dll问题
本人用delphi编写一dll,再用delphi调用,结果出现问题如下:
1:生成dll代码(计算一个字符串的长度)
- Delphi(Pascal) code
Function Mykey_len(key:string):string;stdcall;var keylen:string;begin keylen:=inttostr(length(key)); result:=keylen;end;
2:调用此dll的代码如下
- Delphi(Pascal) code
var Form1: TForm1; Function Mykey_len(keybegin:string):string;stdcall;external 'Mykey.dll';implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);begin edit2.Text:=Mykey_len(edit1.Text);end;运行后点击按钮总是显示
Project project1.exe raised exception class EInvalidPointer with message 'Invalid pointer operation'.
Process stopped. Use Step or Run to continue.
请大家帮忙解析一下,谢谢了
[解决办法]
没发现什么问题,试着做一下改动
- Delphi(Pascal) code
{$R *.res} exports Mykey_len;调换一下 exports Mykey_len;{$R *.res}
[解决办法]
楼主,我用你的代码运行,一切正常啊。
楼主留个邮箱,我把我编译的代码和文件发给你吧。