就我现在用vs2022并使用最新版本instantclient_21_11 的occi连接oracle,在本机windows10上是正常运行,但是我吧程序弄到windows2008r2上运行时在我没有安装vc2015的库的时候会报错:无法定位程序输入点ucrtbase.terminate于动态链接库api-ms-win-crt-runtime-|1-1-0.dll ,但是我安装了vc2015的库之后,会报错:无法定位程序输入点GetOverlappedResultEx 于动态链接库 KERNEL32.dll 上
我经过尝试,发现可能是instantclient_21_11 的occi的版本太高,但是我发现,好像能兼容vs2022的只有instantclient_21_11,但是我的程序是vs2022写的,现在也没有办法让我能连接上oracle库。。
c++连接oracle的问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
19条回答 默认 最新
关注获得0.60元问题酬金 引自强大而免费的微信小程序:皆我百晓生。
这个问题可能是版本兼容性导致的。在使用vs2022和instantclient_21_11时,可以尝试以下解决方法:
确认你使用的instantclient_21_11的occi版本是否为与vs2022兼容的最新版本。可以查找instantclient_21_11的官方文档或社区讨论来确认。
检查你的Windows 2008 R2是否有更新的Windows更新补丁。有时缺少一些更新可能会导致动态链接库缺失的问题。
尝试使用更低版本的instantclient_21_11进行连接。你可以尝试下载较旧的instantclient_21_11版本,并重新编译你的程序进行测试。
检查你的程序是否正确链接了vs2015的库。如果你安装了vc2015的库,你需要确保你的程序正确链接了这些库,并且检查链接设置是否正确。
如果上述解决方法仍无法解决问题,你可以尝试使用其他的C++连接Oracle的库,如ODBC或ODP.NET。这些库可能具有更好的版本兼容性并且可以解决你的问题。
另外,如果你遇到了特定的错误信息,可以提供详细的错误信息以便更好地帮助你解决问题。
评论 打赏 举报 编辑记录解决 2无用