用于TLS1.2的VB6应用程序ado连接

use*_*743 7 vb6 ado adodb tls1.2

我必须支持一个仍在生产的VB6应用程序(呃).客户指定我们的软件需要符合PCI标准,这需要TLS 1.2.

有人知道怎么做吗?

我正在使用SQL Server 2014.我已修补构建12.0.4502.0.

Public Function GetConnection() As ADODB.Connection
  Dim con As ADODB.Connection

  On Error Resume Next
  Set con = New ADODB.Connection
  con.ConnectionTimeout = 10

  Dim connstring As String
  'connstring = "Provider=SQLOLEDB;Server=" & gstrServer & ";Database=" & gstrDB & ";User Id=" & gstrUser & ";Password=" & gstrPwd
  connstring = "Provider=MSDASQL;DRIVER=Sql Server;Server=" & gstrServer & ";Database=" & gstrDB & ";UID=" & gstrUser & ";PWD=" & gstrPwd

  con.Open connstring

  If Err Then Set con = Nothing
  Set GetConnection = con
End Function
Run Code Online (Sandbox Code Playgroud)

该项目引用了"Microsoft ADO Ext.6.0 for DDL and Security"和"Microsoft ActiveX Data Objects 2.5 Library"

我尝试了多个连接字符串选项.

谢谢!

use*_*743 11

我在使用ADO和SQL Server Native Client时找到了答案.

将提供程序更改为SQLNCLI11并添加DataTypeComptibility = 80.

谢谢Bob77!您使用较新的客户端即可.