我的Intranet应用程序允许用户浏览&使用CommonDialog activeX控件(comdlg32.ocx)进行打印。这已经很好用的IE6-IE8。
在IE9客户端计算机上,常用对话框会像往常一样显示,但是单击“确定”或“取消”并关闭对话框时,浏览器将挂起。就像浏览器认为公共对话框仍处于打开状态一样。这不仅限于comdlg32,也会影响我们使用的其他activeX组件。
但是,如果我打电话给Alert();在调用commondialog之后,浏览器不会挂起(如果用户单击取消,则有点乱)。
HTML对话框可以正常工作,例如document.execCommand('SaveAs','1','fileName.txt')但这些不提供我需要的功能(例如浏览文件夹)。
为了澄清这个问题,我创建了一个简单的HTML文件,其中包含commondialog的对象标记,以及一个调用以下javascript函数的html按钮:
function saveFile(){ dialog.ShowSave(); }
真的希望有人可以在这里帮忙,因为我花了一个星期试图解决它!
P.S。在各种客户机上使用Windows 7(也尝试过vista)IE9。
由于
尼克
答案 0 :(得分:0)
见上面的编辑。这是IE9中已知的MS错误。他们说他们会在两个月内发布一个适当的补丁,但上面显示的reg hack是一种享受。