gpt4 book ai didi

javascript - 我可以在 Chakra 上运行 ASP Classic 吗?

转载 作者:行者123 更新时间:2023-11-30 09:00:24 25 4
gpt4 key购买 nike

Chakra 是 Microsoft 打包到 IE9 中的更新 Javascript 引擎的代号。

可以使用 JScript 作为 ASP Classic 页面的开发语言。这通常在 Windows 内置的 JScript 引擎上运行,自 NT4 Option Pack(c.1996)以来,所有版本的 Windows 中都存在这种引擎。

问题是,可以使用在 Chakra 引擎上运行的 Javascript 来实现 ASP 目的吗?

最佳答案

显然不是。

我尝试使用这个简单的示例脚本:

<%@ language="Javascript" %>

<script language="Javascript" runat="server" src='json2.js'></script>

<script language="Javascript" runat="server">

(function() {

scriptEngineInfo = function () {
var s = {
engine : ScriptEngine(),
version: {
major: ScriptEngineMajorVersion(),
minor:ScriptEngineMinorVersion()
},
build: ScriptEngineBuildVersion()
};
return s;
}

}());

var x = scriptEngineInfo();
x.Timestamp = (new Date()).valueOf();

Response.Write (JSON.stringify(x));

</script>

当“Javascript”是语言的名称时,如上,我得到这个结果:

{
"engine": "JScript",
"version": {
"major": 5,
"minor": 8
},
"build": 16982,
"Timestamp": 1331866901948
}

当我按照 this answer 中的建议进行操作时并将 Chakra 配置为命名脚本引擎,然后将上面脚本中出现的三个“Javascript”替换为“Chakra”,然后运行“页面”,我得到正确的结果,预期结果:

{
"engine": "JScript",
"version": {
"major": 9,
"minor": 0
},
"build": 16441,
"Timestamp": 1331867213695
}

9的大版本显示我正在使用Chakra。

但是 如果我随后重新请求相同的脚本,它会失败并显示 500 错误,它说:

Can't execute code from a freed script

如果我再试一次,它会给我

A trappable error (C0000005) occurred in an external object. The script cannot continue running.

如果我再试一次,我会得到:

A ScriptEngine threw exception 'C0000005' in 'IActiveScript::GetScriptState()' from 'CActiveScriptEngine::ReuseEngine()'.

对于此脚本,在我的机器上这是可重复的。

据此我得出结论,Chakra 不是为 ASP 环境设计的。

关于javascript - 我可以在 Chakra 上运行 ASP Classic 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9731246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com