C#调用vb dll 参数传递--数组、整型等(c#调用com)
2010-10-11 14:25
746 查看
本例子中实现在c#中调用由vb生成的dll文件(com调用)
例子由两个主要步骤组成:一 为在vb中生成有参数和返回值的dll ;二 是在c#中引入步骤一中生成的dll,然后生成实例调用
步骤一:首先在vb中新建一个ActiveX DLL 工程,
然后在类模块文件中填入以下代码
并将工程名修改为DLLTest,类模块名为clsTest
然后生成名为DLLTest.dll的动态链接库文件
步骤二:在vs2010中新建一个windows窗体应用程序
首先将生成的dll进行注册,然后在新建的工程中加入该dll的引用
并在窗体上增加两个按钮,分别用于测试基本类型和数组的传递,分别在两个按钮的点击事件中的代码如下
编译运行后弹出结果,证实参数正确传递,调用dll成功
本例子中的所有代码可到此处下载:http://download.csdn.net/source/2747484
例子由两个主要步骤组成:一 为在vb中生成有参数和返回值的dll ;二 是在c#中引入步骤一中生成的dll,然后生成实例调用
步骤一:首先在vb中新建一个ActiveX DLL 工程,
然后在类模块文件中填入以下代码
'********************基础类型的测试******************* Public Function fncStrTest(ByVal str As String) As String fncStrTest = str End Function Public Function fncDoubleTest(ByVal str As String) As Double fncDoubleTest = str End Function Public Function fncIntTest(ByVal str As String) As Integer fncIntTest = str End Function '********************基础类型的测试******************* '********************数组的测试******************* Public Function fncArryTest(ByRef str() As String) As String fncArryTest = str(0) End Function '********************数组的测试******************* Public Function fncVariantTest(ByVal str As Variant) As Variant fncVariantTest = str End Function
并将工程名修改为DLLTest,类模块名为clsTest
然后生成名为DLLTest.dll的动态链接库文件
步骤二:在vs2010中新建一个windows窗体应用程序
首先将生成的dll进行注册,然后在新建的工程中加入该dll的引用
并在窗体上增加两个按钮,分别用于测试基本类型和数组的传递,分别在两个按钮的点击事件中的代码如下
private void btnTestStr_Click(object sender, EventArgs e) { DLLTest.clsTest test = new DLLTest.clsTest(); String str = "55"; String msg = test.fncVariantTest(str); MessageBox.Show(msg); } private void btnTestVariant_Click(object sender, EventArgs e) { DLLTest.clsTest test = new DLLTest.clsTest(); Array array = Array.CreateInstance(typeof(string), 2); array.SetValue("msg1",0); array.SetValue("msg2", 1); String t = test.fncArryTest(array); MessageBox.Show(t); }
编译运行后弹出结果,证实参数正确传递,调用dll成功
本例子中的所有代码可到此处下载:http://download.csdn.net/source/2747484
相关文章推荐
- VB调用C# DLL 传递数组参数问题
- 在VB中调用C/C++语言编写的dll,数组参数的传递
- VB调用DLL时传递自定义类型数组参数注意
- 在VB中调用C/C++语言编写的dll,数组参数的传递
- C#调用c++的dll,结构体数组作为引用参数的传递方式
- 在VB中调用C/C++语言编写的dll,数组参数的传递
- C#中调用非托管的DLL及参数传递
- c# 调用 c++ dll 参数为结构体数组指针
- C#中调用非托管的DLL及参数传递 (一)
- (转)C#生成基于COM的DLL供VB调用
- C#调用C函数(DLL)传递参数问题
- C#调用DELPHI的DLL时传递string数组
- C# 调用Dll 传递字符串指针参数 .
- C# 调用C++DLL传递指向指针的指针参数的方法
- C#调用C++生成的dll,参数有结构体数组
- C#调用C/C++动态库的参数传递---数组指针的传递
- C#调用C/C++ DLL 参数传递和回调函数的总结
- vb.net调用vc动态库时传递数组参数应注意的问题
- c#调用C++写的DLL,传递二维指针参数
- C#的DLL注册为COM,VB来调用