从C#运行vbs Sub

时间:2010-03-09 12:59:17

标签: c# vbscript

是否可以从c#应用程序执行vbs文件中的特定子?

我已经看过创建一个Process然后启动它但是找不到指定脚本文件中哪个特定子应该执行的方法。有没有办法指定这个或有更好的方法吗?

vbs看起来像下面的示例。我想要的是从C#代码启动test1或test2。

Public Sub test1
    msgbox "Hey1"
End Sub

Public Sub test2
    msgbox "Hey2"
End Sub

2 个答案:

答案 0 :(得分:1)

当使用Visual Basic(没有.Net)时,我使用了Script Control

This page包含一些文档,说明如何从好的旧VB中调用它。

语法看起来像这样:

  Result = ScriptControl.Run("Name", arg1, arg2, ... argn)

编辑(阅读评论后): 如果您不需要在上下文中运行VBScript(如果您不共享对象),则可以创建一个运行脚本进程外的小应用程序。你的主应用程序是64位,帮助应用程序是32位。您仍然可以传递简单的参数。

答案 1 :(得分:1)

您使用Windows脚本控件COM组件并调用其Run方法。这是一个有用的link with code examples