2

我从 C# Visual Studio 2008 创建了一个 dll 和 tbl 文件。

Regasm AssemblyName.dll /tlb: FileName.tlb /codebase将它注册到我的本地服务器。

使用 tlb 参考。编译它,它在我的开发PC上运行良好。

在我制作了一个exe后,在其他PC上运行它,提示错误消息“ActiveX无法创建对象”。

我需要为我部署到的每台机器进行 Regasm 吗?

如果部署 PC 中没有 Visual Studio 怎么办?找不到 Regasm。

4

3 回答 3

1

是的,您需要在安装过程中执行此操作。但这只是其中的一部分。您还必须使用属性标记所有公共方法,以确保重新编译不会意外以错误的顺序编译方法。看到这个

于 2011-08-11T01:42:05.437 回答
0

是的,我认为您需要在安装过程中执行此操作。

于 2011-08-11T01:34:37.913 回答
0

是的,您将需要RegAsm在每台客户端计算机上运行。如果您的组件发生更改,您将需要运行RegAsm ... /unregister,用新组件替换您的组件并RegAsm再次运行。

为了让您的 C# DLL 工作,您还需要在机器上安装相关框架(在您的情况下为 .NET Framework 3.5)

我会考虑使用安装程序,因为这可以完成一些繁重的注册/注销工作,并在需要时自动安装框架。

于 2011-08-11T08:49:31.950 回答