通过c#.net将VB6类从dll传递到vb脚本

时间:2016-03-15 07:21:04

标签: vbscript vb6 comvisible msscriptcontrol

我有一个包含VB6类(.cls文件)的dll。

我有一个使用这些类的VB脚本。

我有一个使用Microsoft脚本控件库运行脚本的C#.Net程序(参考:http://osherove.com/blog/2004/2/17/make-your-net-application-support-scripting-a-practical-appr.html

这是我的代码:

script = new MSScriptControl.ScriptControl();
script.Language = "VBScript";
script.AddObject("MyClass", account, true);
script.AddCode(GetScriptCode());
script.ExecuteStatement("RunThisMethod");

MyClass是VB6类的C#等价物[ComVisible(true)]

[ComVisible(true)]
public class MyClass
{ ... }

我想知道如果不是创建我自己的COM可见的C#类,我的代码是否可以使用dll中的VB6类并将其传递给脚本,如果是,如何?< / p>

更新 我已经注册了所有需要的COM组件,现在我可以引用COM dll了。但是,当我尝试在COM dll中实例化该类的对象时,我得到错误80040154类未在运行时注册

0 个答案:

没有答案