我正在写一个.NET框架应用程序并尝试连接到服务器上的 DB2 数据库。尝试时,我收到错误“System.DllNotFoundException:'无法加载 DLL 'db2app64.dll':找不到指定的模块。(HRESULT 异常:0x8007007E)'”。显然,这是因为该文件不在目录中,但我很难找出该文件是什么以及如何获取它。以下是我当前通过 NuGet 在项目上安装的内容:
任何事情都会有帮助的。谢谢。
我对 NuGet 也有同样的问题:IBM.Data.DB.Provider version="11.5.4000.4861" targetFramework="net452",它附带一个“clidriver”目录,其中包含所有必需的 DLL,包括 64 位“db2app64”。 dll'、32 位'db2app.dll' 以及其他使 DB2 数据访问成为可能的东西。
谢谢依赖步行者 https://github.com/lucasg/Dependencies我发现我的 Windows 上缺少 MSVCR120.dll。
我下载了适用于 Visual Studio 2013 的 Visual C++ 可再发行组件包 https://www.microsoft.com/en-us/download/details.aspx?id=40784x86 和 x64 位版本(我在 64 位 Win10 和 64 位 Windows Server 2016 Standard 上运行)并按此顺序安装它,第一个 x86,然后是 x64(但您可能需要例如适用于您的 PC 的 ARM 版本)。
安装 C++ Redistributable 2013 后,它立即对我有用,无需重新启动。
请注意,“较新”的 NuGet,例如IBM.Data.DB2.Core.3.1.0.400 在附带的“clidriver”目录中具有必要的 MSVCR120.dll,因此不需要安装 C++ Redistributable。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)