从C#运行vbs Sub

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

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

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

Public Sub test1 msgbox "Hey1" End Sub Public Sub test2 msgbox "Hey2" End Sub 

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

这个页面包含一些如何从好的旧VB中调用它的文档。

语法看起来像这样:

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

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

您使用Windows脚本控件COM组件并调用其Run方法。 这是一个有用的代码示例链接 。