非常实用的东西!过去知道这个方法的话可以解决多少问题啊
首先建立一个C#的DLL工程,写一个类
//Test.cs
namespace Test
...{
public class MyTest
...{
public string Fun()
...{
return this.ToString();
}
}
},编译
然后在cmd里执行VS的vsvars32.bat设置环境变量,然后执行
regasm cscomtest.dll /tlb:cscomtest.tlb /codebase
Microsoft (R) .NET Framework 程序集注册实用工具1.1.4322.573
版权所有 (C) Microsoft Corporation 1998-2002。保留所有权利。
RegAsm 警告: 使用 /codebase 注册未签名的程序集可能会导致程序集妨碍在同一台计算机
上可能安装的其他应用程序。/codebase 开关旨在仅用于已签名的程序集。请为您的程序集
提供一个强名称并重新注册它。
成功注册了类型
程序集已被导出到“C:/Documents and Settings/pyw/My Documents/Visual Studio Proje
cts/cscomtest/bin/Debug/cscomtest.tlb”,类型库注册成功
然后打开VB或者VBS,写KO!成功了,这个效果相当于用VB调用C#,虽然是通过COM实现的,太酷了!
set o = createobject("Test.MyTest")
msgbox o.Fun()
本文介绍了一种通过COM方式让C#与VB/VBS互相调用的方法。具体步骤包括:创建C# DLL项目,编写公开接口,使用regasm工具进行注册,并在VB或VBS中通过CreateObject创建实例来调用C#中的方法。
3054

被折叠的 条评论
为什么被折叠?



