这个技术问题实在太难了,所以 不是高手别进来!!
如何获得其它程序弹出的‘打开文件对话框’中鼠标或键盘选中的文件的文件名(包括完整路径)??求源代码!!!
注:要求代码支持Win9X/2K/XP

解决方案 »

  1.   

    应该是不断枚举窗体,监视是否有‘打开文件对话框’对话框出现。
    用vc自带的spy++看看!‘打开文件对话框’对话框中的列出文件的那个控件。应该是list_box之类的吧,没看过。
    如果是只要‘打开文件对话框’对话框出现就找到list_box并取得它的内容,hook别人操作中发给list_box的选择文件的消息,就象qq尾巴那样,由于不能得到变量对象,消息里面参数应该有选择的第一个什么的这样的内容!得到后自己根据刚得到的list_box内容查找.....不过路径什么的不好处理吧!!没做过!没代码!说点看法而已....
      

  2.   

    此贴与http://community.csdn.net/Expert/topic/4264/4264084.xml?temp=.6971399合并,大家去看看绝对不只是HOOK而已肯定还要用到其它技术.
      

  3.   

    还没有解决阿,呵呵,使用这种方法指标不致本,taianmonkey说的没错,文件的驱动吧,使用vxd和wdm。
      

  4.   

    用屏幕抓词技术应该是可以实现的。
    我已经写好了屏幕抓词程序(关键是安装Mouse Hook,并截获TextOutA(W)、ExtTextOutA(W)调用。
      

  5.   

    1、编写文件访问控制驱动是一个办法,但是有点过了
    2、楼主其实应该把你的需求讲出来,看有没有其他变通的办法,用这种方式去完成你的功能,好像有点花
    3、建议编写HOOK程序,打开文件选择框的API函数应该在kernel.dll或者user32.dll中,检测此函数的调用即可。
    一点思路,大家参考。