C# 实现IE9';s的JavaScript引擎(“;Chakra”;)以怪癖模式工作

C# 实现IE9';s的JavaScript引擎(“;Chakra”;)以怪癖模式工作,c#,.net,internet-explorer-9,chakra,iactivescript,C#,.net,Internet Explorer 9,Chakra,Iactivescript,通过在CLSID“{16d51579-a30b-4c8b-a276-0ff4dc41e755}”(如上所述)的基础上创建一个IActiveScript实例,我们得到了IE9的JavaScript引擎,该引擎在怪癖模式下工作。不幸的是,ECMAScript 5不支持“怪癖”模式 有人知道如何为“脉轮”创建IActiveScript实例,该实例在IE9标准模式下工作吗?我相信CLSID是16d51579-a30b-4c8b-a276-0ff4dc41e755。关于活动脚本和JScript接口有各种各

通过在CLSID“{16d51579-a30b-4c8b-a276-0ff4dc41e755}”(如上所述)的基础上创建一个IActiveScript实例,我们得到了IE9的JavaScript引擎,该引擎在怪癖模式下工作。不幸的是,ECMAScript 5不支持“怪癖”模式


有人知道如何为“脉轮”创建IActiveScript实例,该实例在IE9标准模式下工作吗?

我相信CLSID是16d51579-a30b-4c8b-a276-0ff4dc41e755。关于活动脚本和JScript接口有各种各样的重要信息,特别是对于那些使用C#的人。

IActiveScript
强制转换为
IActiveScriptProperty
然后调用
SetProperty
并调用
SCRIPTPROP\u
,如下所示:

CComQIPtr<IActiveScriptProperty> property = jscript;
CComVariant version(SCRIPTLANGUAGEVERSION_5_8 + 1); // = 3
hr = property->SetProperty(SCRIPTPROP_INVOKEVERSIONING, nullptr, &version);
CComQIPtr属性=jscript;
CComVariant版本(SCRIPTLANGUAGEVERSION_5_8+1);//=3.
hr=property->SetProperty(SCRIPTPROP_调用eversioning、nullptr和version);

我不知道这是否确实有效,但请查看此界面,看看它是否能满足您的需要:我这样做了,但Array.forEach仍然不存在。Microsoft JScript 11.0.16384对象不支持属性或方法“forEach”Src:JavaScript运行时错误:0 Scode:800a01b6