看来不放血是没有人来了!!!!!!!!

clasj 2003-10-29 06:36:59
故事是这样的:
我想用“复制钩子”技术屏蔽对某些文件夹的操作!
我将受保护的文件夹路径保存到一个Access数据库中,然后想在CopyCallback方法中进行匹配,可是添加如下代码:
ADOQuery1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=E:\Data.mdb;Persist Security Info=False";
ADOQuery1.SQL.Add("select * from table");
ADOQuery1.Active=true;
后编译通过了,但是将生成的DLL文件注册到系统后进行文件夹(复制,重命名,剪切,删除)操作时就会出错。
大家说这样行的通吗?为什么不能连接数据库呢?
有人告诉我不用连接数据库,直接将数据读入内存,可是我哪里会啊,你会吗?
如果你有更好的办法,麻烦你告诉我啊!
...全文
45 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
aiirii 2003-10-30
  • 打赏
  • 举报
回复
to clasj(我蛮怀) :
>>写到文本里面,你保证能读吗?
如果寫到文本里不能保證能讀, 那同樣不能保證寫到數據庫就能讀啊!!



clasj 2003-10-30
  • 打赏
  • 举报
回复
没办法,我还是写到文件里面去了!
不过谢谢大家捧场哦,我会继续研究为什么不能连数据库的!
hightz 2003-10-29
  • 打赏
  • 举报
回复
关键在于你的DLL接口有没有export
我的想法:
从数据库中取要拷贝的文件名是绝对没问题的
但是关键你的应用程序传的参数是否一一对应.
短歌如风 2003-10-29
  • 打赏
  • 举报
回复
加上CoInitialize(nil)和CoUninitialize试试(分别在代码开始和结束)
mrtxc 2003-10-29
  • 打赏
  • 举报
回复
这是你的代码??应该可以连接数据库吧!!

把代码全部贴出来看看,包括窗体代码。
clasj 2003-10-29
  • 打赏
  • 举报
回复
我的应用程序跟DLL没关系,而且DLL里面只覆盖了CopyCallback方法(也只有这一个方法),而且这个方法里面目前我只添加了连接数据库的代码!
如果添加别的代码是可以实现的,比如MessageBox('你确定要执行该操作么?','注意',MB_YESNO)
delphi_xizhousheng 2003-10-29
  • 打赏
  • 举报
回复
你把应用程序和DLL联调一下,感觉很数据库连接没有什么关系,不然把代码贴出来看看
BG2WUI 2003-10-29
  • 打赏
  • 举报
回复
大哥,我真的想帮你,可是我连什么是钩子都不知道,更不知道什么是复制钩子了,不好意思只能帮你UP一下了!
winder_008 2003-10-29
  • 打赏
  • 举报
回复
写成服务试试
clasj 2003-10-29
  • 打赏
  • 举报
回复
写到文本里面,你保证能读吗?
saien 2003-10-29
  • 打赏
  • 举报
回复
我也想学,帮你up
aiirii 2003-10-29
  • 打赏
  • 举报
回复
我覺得, 如果不多的話, 直接寫到個文本不好嗎??
clasj 2003-10-29
  • 打赏
  • 举报
回复
那救谢谢哈!
Seahilly 2003-10-29
  • 打赏
  • 举报
回复
我也不知道,替你up。

5,392

社区成员

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

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