【发布时间】:2017-08-26 00:48:48
【问题描述】:
我必须支持仍在生产中的 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
项目引用“Microsoft ADO Ext. 6.0 for DDL and Security”和“Microsoft ActiveX Data Objects 2.5 Library”
我尝试了多个连接字符串选项。
谢谢!
【问题讨论】:
-
ADOX 是一个仅限 Jet 的库。在任何情况下,您都需要使用更新的 SQL Server Native Client 或支持 TLS 1.2 的同等产品,这不是 VB6 的责任,而是 SQL Server 的问题。
-
这是有道理的。问题仍然是安装了 sql 更新时要引用什么对象。我确实在Microsoft site 上找到了一些支持。但是目前还不清楚要使用哪个对象。
-
2.5 之后的大多数 ADO 接口更改是针对 SQL Server 的,少数适用于 Oracle。但除非您在代码中使用它们,否则 ADO 2.5 可以正常工作。如果您要询问提供程序和连接字符串的其余部分,请查阅 SQL Server 文档。