1

我一直在使用新的 ActiveXObject ('AcroPDF.PDF') 来检测任何 Adob​​e Reader 版本 7 或更高版本。就在最近,Adobe Reader 推出了更新。现在,当我尝试运行该代码时。它只是“死”。还有其他人遇到同样的问题吗?欢迎任何建议或想法。

提前致谢,

注意:IE8。Adobe Reader X。Windows XP。

4

1 回答 1

0

您是否尝试过通过 CLSID 而不是 progId 运行它?如果我没记错的话,CLSID 是 CA8A9780-280D-11CF-A24D-444553540000。

也许你可以澄清一下“死”是什么意思?


更新

var checkAdobeReaderAvailability = function (displayMessageDelegate) {
            var dynamicObject = document.createElement("object");
            dynamicObject.onreadystatechange = function (x) {
                if (dynamicObject.readyState === 4) {
                    if (displayMessageDelegate !== undefined && typeof displayMessageDelegate === 'function') {
                        displayMessageDelegate();
                    }
                }
            }
            dynamicObject.classid = 'CLSID:CA8A9780-280D-11CF-A24D-444553540000';           

            document.getElementById('host').appendChild(dynamicObject)
        }

        var checkAdobeReaderAvailabilityWithProgId = function (displayMessageDelegate) {
            var ax = new ActiveXObject('AcroPDF.PDF');

            displayMessageDelegate(ax);
        }
        var onload = function () {
            checkAdobeReaderAvailability(function () { alert('Done!'); });
            checkAdobeReaderAvailabilityWithProgId(function () { alert('Done!'); });
        }
于 2011-06-24T19:46:44.023 回答