Por que estou recebendo o provedor de dados ou outro serviço retornou um status E_FAIL? Cliente nativo do SQL

Estou mudando nosso código ASP para usar o SQL Native Client para que possamos nos conectar a um banco de dados espelhado com um parceiro de failover, pois você só pode fornecer os parâmetros do parceiro de failover no SQL Native Client. Quando eu executo um proc que retorna uma coluna nvarchar (max) com Driver = {SQL Server}, tudo funciona bem. Quando executo procs que retornam pequenas colunas com Driver = {SQL Server Native Client 10.0} que funciona bem. É somente quando tento executar um proc que retorna uma coluna nvarchar (max) enquanto usa Driver = {SQL Server Native Client 10.0}; que recebo o erro. O erro acontece assim que atingimos

<code>rs.Open cmdTemplate
</code>

Então, nem estou me referindo à coluna. Configurando a string conn assim:

<code>if bUseSQLNative then
        connString = "Driver={SQL Server Native Client 10.0}; Network=DBMSSOCN; server=" & rs("SERVER_NAME") & "," & rs("PORT_NUM") & ";database=" & rs("DATABASE_NAME")
        connString = connString & ";uid=" & rs("USER_NAME") & ";pwd=" & UnProtectValueEx(ConnSaltForDBPwd(), rs("CONNECTION_NAME"), rs("PASSWORD"))
    else
        connString = "Driver={SQL Server}; Network=DBMSSOCN; server=" & rs("SERVER_NAME") & "," & rs("PORT_NUM") & ";database=" & rs("DATABASE_NAME")
        connString = connString & ";uid=" & rs("USER_NAME") & ";password=" & UnProtectValueEx(ConnSaltForDBPwd(), rs("CONNECTION_NAME"), rs("PASSWORD"))
    end if 
    connString = connString & ";"
</code>

E abrindo assim:

<code>set rs = server.CreateObject("ADODB.RecordSet")
rs.CursorLocation = 3
rs.CursorType = 3
rs.CacheSize = 50

on error resume next
    rs.Open cmdTemplate
</code>

O erro é: Microsoft Cursor Engine (0x800A0001) O provedor de dados ou outro serviço retornou um status E_FAIL.

questionAnswers(3)

yourAnswerToTheQuestion