一般分为两步:
第一步,增加环境变量
第二部,注册.net组件
在你的环境变量Path中加入
C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin;
C:\WINNT\Microsoft.NET\Framework\v1.1.4322
随便建立一个ClassLibrary编译成DLL文件
切换到MS-DOS命令行下面,运行:
C:\>regasm out ClassLibrary1.DLL /regfile:ClassLibrary1.reg
上面的命令行是注册我们的.NET组件,并且产生了一个备用的注册表文件。对应Windows的注册COM文件命令:regsvr32 c:\test.dll .
在.NET下面,注册.NET组件就需要上面的regasm命令了
然后在MS-DOS命令行下面,运行:
C:\>tlbExp ClassLibrary1.dll /out:ClassLibrary1.tlb
上面的命令行表示将会产生一个.NET组件的类型库
有了TLB文件也就和正常的COM组件一样了,运行Delphi导入类型库文件TLB......
和正常的COM调用一摸一样
C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin;
C:\WINNT\Microsoft.NET\Framework\v1.1.4322
随便建立一个ClassLibrary编译成DLL文件
切换到MS-DOS命令行下面,运行:
C:\>regasm out ClassLibrary1.DLL /regfile:ClassLibrary1.reg
上面的命令行是注册我们的.NET组件,并且产生了一个备用的注册表文件。对应Windows的注册COM文件命令:regsvr32 c:\test.dll .
在.NET下面,注册.NET组件就需要上面的regasm命令了
然后在MS-DOS命令行下面,运行:
C:\>tlbExp ClassLibrary1.dll /out:ClassLibrary1.tlb
上面的命令行表示将会产生一个.NET组件的类型库
有了TLB文件也就和正常的COM组件一样了,运行Delphi导入类型库文件TLB......
和正常的COM调用一摸一样
设置DLL的ComVisible为true
有人说可以成功,有人说没有解决问题。
没有解决的可以查找一下资料,推荐一本书 李维的书inside VCL 里面应该有这种案例。