奇怪的dll问题 ( 积分: 50 )

  • 主题发起人 主题发起人 lmxeq5
  • 开始时间 开始时间
L

lmxeq5

Unregistered / Unconfirmed
GUEST, unregistred user!
我的DLL里面有着样一个要引出的函数
function ReadNodeValueIniFile(Node:PChar):PChar;
var myInifile:TInifile;
IniFileName:string;
Res:TStrings;
begin
Res:=TStringList.Create;
IniFileName:=GetExeFilePath+'Config.ini';
myInifile:=TiniFile.Create(IniFileName);
myIniFile.ReadSectionValues(Node,Res);
Result:=PChar(Res.Text);

Res.Free;
myIniFile.Free;
end;
外部调用时
在这个函数中将Res.Free;注销则运行正常
否则返回错误的值(乱码或空),但这样肯定会有内存泄漏
大家知道这是什么原因造成的,改如何解决呢,
欢迎大家共同讨论!!!
 
我的DLL里面有着样一个要引出的函数
function ReadNodeValueIniFile(Node:PChar):PChar;
var myInifile:TInifile;
IniFileName:string;
Res:TStrings;
begin
Res:=TStringList.Create;
IniFileName:=GetExeFilePath+'Config.ini';
myInifile:=TiniFile.Create(IniFileName);
myIniFile.ReadSectionValues(Node,Res);
Result:=PChar(Res.Text);

Res.Free;
myIniFile.Free;
end;
外部调用时
在这个函数中将Res.Free;注销则运行正常
否则返回错误的值(乱码或空),但这样肯定会有内存泄漏
大家知道这是什么原因造成的,改如何解决呢,
欢迎大家共同讨论!!!
 
此问题已解决
http://community.csdn.net/expert/Topicview2.asp?id=3995949
 
后退
顶部