通过基于CLSID“{16d51579-a30b-4c8b-a276-0ff4dc41e755}”(如here所述)创建IActiveScript实例,我们获得了IE9的JavaScript引擎,该引擎可在Quirks模式下工作。不幸的是,在Quirks模式下不支持ECMAScript 5。
有谁知道如何为IE9标准模式下的“Chakra”创建IActiveScript实例?
最佳答案
将您的IActiveScript
转换为IActiveScriptProperty
,然后像这样用SetProperty
调用SCRIPTPROP_INVOKEVERSIONING
:
CComQIPtr<IActiveScriptProperty> property = jscript;
CComVariant version(SCRIPTLANGUAGEVERSION_5_8 + 1); // = 3
hr = property->SetProperty(SCRIPTPROP_INVOKEVERSIONING, nullptr, &version);
关于c# - 实现IE的IActiveScript实例(9's JavaScript engine (“Chakra”)在Quirks模式下工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12448718/