我有一个C# .Net办公插件应用程序(使用插件Express),它可以访问SQL Server或VistaDB数据库,它是为.Net 4.5构建的。这个插件在安装了SQL Server2014的Win10机器上运行正常,但当它安装在没有SQL Server的Win7机器上时,它会抛出一个错误,说找不到Microsoft.SqlServer.Smo.dll或它的一个依赖项。如果我在Win 7上的Microsoft.SqlServer.dll上运行Dependency walker,框中会显示一些错误:

在问题dll上的Win 10 Box依赖遍历程序中,所有的API-MS-WIN-*模块旁边都有一个黄色的问号,但没有沙漏,并且在它们的右侧有消息"File not found in local directory or search path“,但没有错误消息,程序运行正常。
外接程序未运行涉及SQL server的代码,但似乎仍访问了SQL server DLL,外接程序失败。
有没有办法让SQL Server不能被访问,除非在Win 7机器上执行代码,或者以其他方式消除这个错误?C#
发布于 2017-11-29 20:39:48
我能想到的唯一解决方案是在客户机上安装SMO依赖项。这是一种选择吗?内存中有一个轻量级安装所需的SharedManagementObjects.msi。
https://stackoverflow.com/questions/47545570
复制相似问题