调用dll函数被跳出

cashfly 2012-04-05 12:43:43
procedure Log(name: string; Log: string); stdcall; overload;
var
f: Textfile;
FileName: string;
begin
// SetLogValue();
if m_nWriteLog<>1 then Exit;//m_nWriteLog声明在DLL工程中的另外一个单元中,EXE程序在调用时,执行了一次setlogvalue使m_nWriteLog:=1
FileName := '' + name + '' + '.log';
AssignFile(f, FileName);
try
if FileExists(FileName) = False then
Rewrite(f)
else
begin
Reset(f);
Append(f);
end;
Writeln(f, FormatDateTime('yyyy''/''mm''/''dd hh:nn:ss ', Now) + Log);
finally
CloseFile(f);
end;

end;

不知道为何,每次运行到注释那句,就直接退出了。。不知道是哪里弄错了,我另外写了一个DEMO的全局变量都可以这样用
...全文
55 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
s11ss 2012-04-05
  • 打赏
  • 举报
回复
setlogvalue导出了吗?
山东蓝鸟贵薪 2012-04-05
  • 打赏
  • 举报
回复
将注释去掉再试试,肯定不是注释的问题
s11ss 2012-04-05
  • 打赏
  • 举报
回复
好吧,分可以全给我了!!![Quote=引用 3 楼 的回复:]
感谢楼上两位热心回复。
昨天晚上头脑昏了。应该找到问题所在了。

我在EXE程序中引用了m_nWriteLog所在单元,当时想的是直接赋值过去。后来行不通忘了去掉了。
现在删除后,通过调用DLL函数去赋值,已经可以了。
[/Quote]
cashfly 2012-04-05
  • 打赏
  • 举报
回复
感谢楼上两位热心回复。
昨天晚上头脑昏了。应该找到问题所在了。

我在EXE程序中引用了m_nWriteLog所在单元,当时想的是直接赋值过去。后来行不通忘了去掉了。
现在删除后,通过调用DLL函数去赋值,已经可以了。

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧