我们正在使用interop.msscriptcontrol.dll来执行简单的VBScript变量代码(“今天 - 1”类型的东西)。我们的应用程序是非COM组件,除此之外。我们已经搜索了.Net替换VBScript,但我们一直找不到。
是否有.Net的VBScripting替换?
答案 0 :(得分:2)
在下面的示例中,我将使WebBrowser控件评估VBScript表达式“Now - 1”并将结果嵌入WebBrowser的document.title中,以便我可以在C#中获取它:
WebBrowser wb = new WebBrowser();
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(
(object _sender, WebBrowserDocumentCompletedEventArgs _e) =>
{
MessageBox.Show(wb.Document.Title);
}
);
wb.DocumentText = @"
<HTML>
<HEAD>
<TITLE>Hello</TITLE>
<SCRIPT language=""VBScript"">
document.title = Now - 1
</SCRIPT>
</HEAD>
<BODY/>
</HTML>";
显然,这种方法有:
我的直觉是这种方法可能比您目前正在使用的方法更糟糕。
答案 1 :(得分:2)
我最终使用免费的Codefluent运行时引擎来替换msscriptcontrol.dll:
http://www.softfluent.com/products/codefluent-runtime-client