2

我的解决方案由多个项目组成,所有项目都输出类型类库,但输出类型为 Windows 应用程序的项目除外。该应用程序引用了所有其他项目。我还有一个 COM 组件,它也被一些项目和应用程序引用。

我可以通过将 Visual Studio 中引用的 COM 组件的独立属性更改为 TRUE 来设置 regfree COM。解决方案构建成功,我可以看到为该特定程序集或应用程序生成的清单文件。

现在,我的问题是,我需要对所有引用 COM 组件的项目执行此操作吗?如果是,那么我知道我不能在多个项目上将独立属性设置为 TRUE(产生构建错误),那么我该如何解决这个问题?

我对 .net 比较陌生,不太了解 regfree COM(我假设我在做什么是 regfree COM?)。非常感谢我能在这个问题上获得的任何帮助。谢谢。

我目前正在使用 VS 2008。

编辑:当多个项目的独立属性设置为 TRUE 时,构建错误表示 myCOMcomponent.ocx 在两个项目的生成清单中定义。

4

1 回答 1

1

每个应用程序只能隔离每个 COM 组件一次。这就是你得到错误的原因。如果您创建一个包装器库来公开该组件中的功能,然后让其他所有东西调用该包装器,而不是直接调用 COM 组件,则可以解决此问题。这样,您只有一个对 COM 组件的引用,因此只需将其隔离一次。

于 2011-03-02T17:53:08.257 回答