打印

关于Adobe Reader pdfshell文件的BUG

关于Adobe Reader pdfshell文件的BUG

问题是这样的:
起初是CFileDialog 遇到异常退出的问题,如下两行代码测试:
   CFileDialog dlg(true);
    dlg.DoModal();
多次打开文件的时候,第一次随便选择一个,第二次选择桌面的一个.txt文件,当鼠标移动到这个.txt文件(或者用键盘选择到)的时候,程序就崩溃了,测试一下记事本,也是一样的情况。


后来跟踪了一下,发现是pdfshell.dll模块引起的问题,我的环境是xp sp2+Adobe7,换成Adobe8.1.2仍然存在这个情况,但在2003系统在没有问题。以上说的都是中文版。

再讲一些细节:

pdfshell.dll并不在进程内存一直存在,当程序调用“打开文件”对话框的时候,他还没有插入进来,当选择一个文件,或者鼠标移动到一个文件,进程被插入
:\Program Files\Common Files\Adobe\Acrobat\ActiveX
路径下的pdfshell.dll和pdfshell.CHS

选定了文件点击“打开”按钮之后,pdfshell.dll卸载,只留下pdfshell.CHS
引发异常的时候,程序崩溃在shell32.dll,GetLastError的值是1008,ERROR_NO_TOKEN

笔者水平有限时间有限,文章只做抛砖引玉,不当之处,欢迎讨论
如果没有爱,就守住寂寞吧!

TOP


感谢一直以来您对我们的支持!
当前时区 GMT+8, 现在时间是 2008-8-29 10:36 京ICP证060528 号

Designed By 17DST