请问如何从Dll里返回一个PChar值? 我在Dll里写了加密算法,供PB使用,返回几个字符串,怎样把string值付给PChar,因为在Dll里,函数执行完成之后就自动释放内存,所以我如何把string值付到PChar所指向的内存区域? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function a:pcharbeginresult:=string[1];end;不过这样,必须保证string并不是局部变量从而不会在函数返回后被系统delete,建议还是用申请内存-内存拷贝比较好. Functon A: pChar;Var ResultValue: String;Begin ResultValue:= 'AAAA'; Result:= pChar(ResultValue)end; function StrPCopy(Dest: PChar; const Source: string): PChar; 还是出错呀!是不是在调用时不分配内存,然后在DLL里再分配! function StrEncrypt(Src, Pass: PChar): PChar; stdcall;即可。 我在返回时用:Result :=StrNew(PChar(SQLStr)),内存不报错,但返回的是乱码? 我在DLL里SHowMessage(Result)一下,看到结果是对的,在PB调用返回接收的却是乱码??? 使用copyfile函数,出现“无法复制文件:无法读源文件或磁盘” 中间层数据修改 如何建立静态ADO连接,解决即给分 大家讨论讨论delphi.net Delphi6开发三层系统,数据库是oracle9,应用层用BDE连接(通的),客户端不通啊?!Help me!!在线等 请高手帮我分析我的代码为什么老是出错???? 如何让日期型字段显示为空? 给大家分,前段时间提问题时给的分数都太少,补偿了 delphi怎么创建常驻的共享内存?? string or pchar 一个简单的问题:如何获得Excel文件中数据的行数?? 一个简单的EXCEL问题,望高手指教!
begin
result:=string[1];
end;
不过这样,必须保证string并不是局部变量从而不会在函数返回后被系统delete,
建议还是用申请内存-内存拷贝比较好.
Var
ResultValue: String;
Begin
ResultValue:= 'AAAA';
Result:= pChar(ResultValue)
end;