Microsoft.SqlServer.Smo.dll缺少对Win 7计算机的依赖性

时间:2017-11-29 05:19:42

标签: c# .net sql-server dll

我有一个C#.Net Office加载项应用程序(使用Add-In Express),可以访问为.Net 4.5 Any CPU构建的SQL Server或VistaDB数据库。加载项在安装了SQL Server 2014的Win 10机器上运行正常,但是当它安装在没有SQL服务器的Win 7机器上时会抛出错误,说明找不到Microsoft.SqlServer.Smo.dll或其中一个依赖项。如果我在Win 7框上的Microsoft.SqlServer.dll上运行Dependency walker会显示许多错误: enter image description here 在问题dll上的Win 10 Box Dependency walker上显示所有API-MS-WIN- *模块旁边有一个黄色问号,但没有沙漏和消息"文件在本地目录或搜索路径中找不到&#34 ;在他们的右边,但没有错误信息,程序运行正常。

没有涉及SQL Server的代码由加载项运行,但似乎无论如何都访问了SQL Serve DLL并且加载项失败。

除非在Win 7框上执行代码或以其他方式摆脱此错误,否则有可能无法访问SQL Server Dll? C#

1 个答案:

答案 0 :(得分:1)

我能想到的唯一解决方案是在客户端计算机上安装SMO依赖项。这是一个选择吗?从内存中有一个需要轻量级安装的SharedManagementObjects.msi。