用C#写的DLL在VS环境下比较容易调用,但是在非VS环境下,如C++ Builder、DELPHI、VC、VB等开发环境下调用就相对麻烦一些,在这些非VS开发环境中是以COM组件方式来调用的,在别人开发好的C# DLL会提供一个DLL文件,最好提供一个相应的tlb文件,使用步骤如下:
1、运行环境需求
.NET运行环境
2、注册COM,导入tlb到开发环境
1) 如果没有tlb文件,可以用提供的DLL来生成,方法如下:
运行.NET安装路径下的RegAsm来注册,并可以导出tlb
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regasm.exe" dll文件名(包括路径) /tlb:tlb文件名
如:MyTest.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regasm.exe" MyTest.dll /tlb:MyTest.tlb
2)使用VS下的工具gacutil.exe把该dll加入到全局程序集缓存中
工具gacutil.exe在VS环境中有,就需要2个文件:gacutil.exe、gacutil.exe.config,网上也有下载
命令如下:
gacutil.exe /i MyTest.dll
然后把tlb导入到你的开发环境中,每种开发环境导入方式有所不一样,此处不详述,请参考相关资料
3、在开发环境中可使用COM组件方式来开发了
4、在发布到用户环境时,需要安装.NET环境,然后需要做第2步,就可以正常运行了