0

我们在 vb 6.0 中有项目 PrjDb.dll,它引用了 ado 2.5。该项目是在机器 A 上构建的。现在,当我们在另一台机器 B 上为 PrjDb.dll 生成互操作时,我们最终会得到一个新的 ADODB.dll,版本字段中的版本为 2.5,而不是将其与主互操作程序集 adodb.dll 链接(在“Program Files\Microsoft.NET\Primary Interop Assemblies”下找到)。问题是当我部署我的应用程序时,它现在要求这个新生成的 adodb.dll。而且我不想发货。

即使我在命令行中提供了 adodb.dll 路径,它仍然会为 AdoDB 生成新的互操作。我尝试使用开关 /strict 然后它说它无法使用我希望它使用的 AdoDB.dll 解析引用。

如果我们在构建 PrjDb.dll 的同一台机器上生成互操作,则不会发生这种情况。而不是在机器 B 以外的任何机器上,它会自动为 AdoDB 选择 PIA。

当我们为 PrjDb.dll 生成互操作时,知道机器 B 上发生了什么吗?

4

1 回答 1

1

既然您已经在 .Net 上,您是否可以不使用 ADO.Net?这是我发现的各种 ADODB 互操作错误的一种解决方案。请随时澄清,以便我们可以帮助您获得“真正的答案”。

http://bytes.com/forum/thread470736.html)(来自谷歌搜索:adodb interop.net)

于 2008-09-19T12:46:38.770 回答