导入数据后无法加载DLL的问题

sdmltyj 2006-04-14 10:30:36
我用C写了个DLL是用来加密的,传过去一个字符串,然后读取硬盘信息,来判断传入的字符串是否合法,用此来判断是否为合法用户,现有如下问题
我的DLL名称是:mfcdll.dll
申明如下:
function int decrypt(ref string aa) library "mfcdll.dll"
在其它地方都使用很好,没有任何问题
现有一个功能:就是将一个文本导入数据窗口(就是正常的数据导入功能)
代码如下:
代码1:
string ls_file_name

setnull(ls_file_name)

dw_1.reset()

if dw_1.importfile(ls_file_name) > 0 then
cb_csh.enabled = true
end if

就是把文本文件里的内容导入到数据窗口:dw_1里,
然后再进行保存等操作
因为在程序中一些关建之处,如保存等地方我都调用了我的DLL进行判断合法性,所以在上面的导入操作完成后再调用如下操作:
代码2:
string ls_reg
int li_ret
select reg_id into :ls_reg from test;
li_ret=decrypt(ls_reg)
if li_ret<>gi_i then
halt;
return
end if

gi_i是一个公共变量,事先设为1;
当decrypt(ls_reg)反回1时表示用户合法,否则用户非法(反回0或其它)
现在的问题就是:代码2在代码1之前执行时,没任何问题,但在代码1之后执行时,不管在哪执行,都会退出的也就是decrypt(ls_reg)返回0
不知道倒低是怎么回事

代码2在没有执行代码1时任何地方都是正常的,

非常急,希望有高手指点一二!分不够可以另加,只要能解决问题就行!
...全文
213 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdmltyj 2006-04-14
  • 打赏
  • 举报
回复
晕哦,我贴子已经结了,怎么没显示已结贴呀?
sdmltyj 2006-04-14
  • 打赏
  • 举报
回复
好的,多谢,搞定了,放分,呵呵
  • 打赏
  • 举报
回复
在导入完文本文件的脚本后写上面的函数就可以了!
sdmltyj 2006-04-14
  • 打赏
  • 举报
回复
好的,我试试,好了后马上放分
  • 打赏
  • 举报
回复
SetCurrentDirectory(当前程序所在的路径)
  • 打赏
  • 举报
回复
但是你导入的文本没有在当前程序的路径下啊!
sdmltyj 2006-04-14
  • 打赏
  • 举报
回复
哦,怎么设,像我上面的该怎么设置呢,我的DLL的路径就是程序的当然路径
  • 打赏
  • 举报
回复
呵呵,放分吧!
  • 打赏
  • 举报
回复
导入后路径变了,重新把路径设置回来,就可以了!!

680

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder API 调用
社区管理员
  • API 调用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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