C#发现之旅:于动态编译的VB.NET脚本引擎(下)
2010-09-30 21:08:13 来源:WEB开发网这段代码中使用了脚本引擎的ScriptVersion属性,脚本引擎中每进行一次编译时都会更新因此ScriptVersion属性,因此比较该属性可以判断脚本引擎中当前执行的脚本代码是否修改过。【袁永福原创,转载请注明出处】
dlgEditScript是一个脚本代码编辑对话框,其用户界面如下
运行脚本
该文本编辑器中,只能点击工具条的“运行脚本”的下拉菜单的某个项目才能运行脚本方法。在属性该下拉菜单的RefreshScriptMethodList中为每个菜单项目的点击事件绑定了ScriptItem_Click方法,该ScriptItem_Click代码为
/// <summary>
/// 运行脚本的下拉菜单项目点击事件处理
/// </summary>
/// <param name="sender"></param>
/// <param name="args"></param>
private void ScriptItem_Click(object sender, System.EventArgs args)
{
ToolStripMenuItem item = (ToolStripMenuItem)sender;
try
{
// 调用脚本执行指定名称的脚本方法
myVBAEngine.Execute(item.Text, null, true);
}
catch (Exception ext)
{
System.Console.WriteLine("执行脚本 " + item.Text + " 错误:" + ext.ToString());
MessageBox.Show(this, "执行脚本 " + item.Text + " 错误:" + ext.Message);
}
}
更多精彩
赞助商链接