使用CoCreateInstance创建对SQL Server Native Client OLE DB提供程序的访问失败,出现80040154错误

时间:2015-11-22 17:34:16

标签: sql-server com oledb

我正在尝试使用以下命令获取对SQL Server Native Client OLE DB提供程序的访问权限:

hr = CoCreateInstance(CLSID_SQLNCLI11,NULL,CLSCTX_INPROC_SERVER,IID_IDBInitialize,

(void **)& PIDBInitialize);

并且因80040154错误而失败。

我正在使用sqlserver 2012,只要我的应用程序在安装sql server的同一台机器上运行,但是现在应用程序部署在不同的环境中,应用程序在不同的服务器上运行具有数据库和sql server的服务器即使目标服务器上的sql server版本与我的相同,我也没有遇到此错误。

任何想法为什么会以这种方式表现?

我赞赏你的回应。

1 个答案:

答案 0 :(得分:0)

这是REGDB_E_CLASSNOTREG所以CLSID_SQLNCLI11不可用,下载并安装Native Client的可再发行组件包(匹配应用程序的位数)。

Download