VC++用IcopyHook实现监控文件夹(添加,删除,移动...等 *** 作)

VC++用IcopyHook实现监控文件夹(添加,删除,移动...等 *** 作),第1张

这个很简单吧,创建一个COM工程(个人喜欢基于ATL创建),然后实现了

ICopyHook接口就行了啊,DLL编译出来后,需要在注册表里添加指定的项以便EXPLORER加载它,具体位置参见一下MSDN,大概是这个

HKEY_CLASSES_ROOT

Directory

Shellex

CopyHookHandlers

your_copyhook

(Default)

= {copyhook CLSID value}

如果不能实时生效,重启一下EXPLORER就好,一般建议在虚拟机里调试,省得各种崩溃麻烦

循环读取,要命

要监视注册表,很简单,会API钩子么?挂RegOpenKeyEx, RegQueryValueEx, RegSetValueEx等注册表 *** 作API函数的钩子即可。

主要是 RegSetValueEx函数。监视其参数。

你能枚举出来,肯定能得到进程名称或进程pid吧?

原型

int WINAPI icePub_getProcessPathByName(char *strProcessName,char *strPath)

输入:strProcessName 进程名

输出:strPath 进程带路径文件名

原型:

int WINAPI icePub_getProcessPathByPid(int pid,char *strPath)

输入:pid 进程PID

输出:strPath 进程带路径文件名

这两个函数能得到进程的带路径的文件名,你

icePub_open(strPath)

即可

原型:

int WINAPI icePub_open(char *strPath)

输入:strPath 待打开(运行)文件名或链接或文件夹

输出:

下边参考资料里有文档下载


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7858060.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存