如何部署COM

我刚刚完成了我的新COM项目(C#,.NET 3.5)。 该项目将由VFP应用程序调用。 它在我的开发机器上运行良好,但现在我需要知道如何在用户的机器上部署它。 点击一次不适用于这种项目,所以我想我不得不手动分发DLL。

那么,我应该把DLL放在哪里以及如何注册它?

顺便说一句,3.5框架已经安装在用户的机器上。

TIA

我从来没有将RegSvr32与.Net程序集一起使用,而是使用带有/ codebase选项的regasm:

     C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ regasm.exe / codebase mydll.dll

您还可以使用/ tlb选项导出类型库并进行注册。

当然这是最简单的方法,只需使用vstudio创建一个安装程序,它就会为您完成此操作。

创建COM类和接口的描述

.Net程序集不包含类型库兼容格式的信息。 因此,程序员必须运行两个.Net提供的实用程序之一,以将类的程序集描述提取到类型库文件中。

一个实用程序是TLBEXP.EXE,.Net类型库导出程序。 此命令行实用程序将要转换为类型库的程序集DLL文件的名称作为输入。 程序员还可以指定要创建的类型库文件的名称。

tlbexp ComServer.dll /out:ComServer.tlb Assembly exported to C:\Magellan\Source\Output\Debug\ComServer.tlb 

创建类型库后,COM客户端可以引用它以获取COM客户端绑定到COM类接口所需的信息,并在运行时激活COM类。

注册COM类和接口

对于客户端在运行时可以访问的COM类,COM基础结构必须知道如何找到实现COM类的代码。 以下命令完成此操作:

 regasm ComServer.dll 

你的DLL可以放在你想要的任何地方,但一个很好的选择是C:\ Program Files \ MyApplication。

http://www.csharphelp.com/archives/archive190.html