当我在新机器上重建它时,我的c#installer项目出现了大量警告。警告是他们正在寻找版本11.0.0.0的dll版本,其中只有10.0.0.0版本存在。我发现这是由于安装了SQL Server的版本(SQL Server 2008 R2)。大多数dll都是由于Share Management Objects软件包的版本不是版本11.0.0.0。
所以我安装了共享管理对象所需的SqlSysClrTypes.msi(x86)。然后我安装了ShareManagementObjects.msi(x86)。我是从here得到的。
一些错误已经消失,但现在我得到2似乎引用了应该从SharedManagementObjects.msi安装的同一个dll。它必须是可以获得/安装的东西,因为我目前有10.0.0.0版本。
错误是:
无法找到程序集“Microsoft.SqlServer.Smo.dll”的依赖项“MICROSOFT.SQLSERVER.MANAGEMENT.SQLPARSER”(Signature ='89845DCD8080CC91'Version = '11 .0.0.0')
和:
无法找到程序集“Microsoft.SqlServer.Management.SmoMetadataProvider.dll”的依赖项“MICROSOFT.SQLSERVER.MANAGEMENT.SQLPARSER”(Signature ='89845DCD8080CC91'Version = '11 .0.0.0')
我读过的所有内容都表明Microsoft.sqlserver.management.sqlparser应该作为SharedManagementObjects.msi的一部分安装。有什么我可以做到这个dll?我还需要安装其他东西,比如Native Client吗?
我通过安装文件ENU \ x64 \ TSqlLanguageService.msi解决了同样的问题。你可以在这里找到它: