0
我必须支持仍在生产中的VB6应用程序(ugh)。客户指定我们的软件需要符合PCI标准,这需要TLS 1.2。用于TLS1.2的VB6应用程序ado连接
任何人都知道如何做到这一点?
我正在使用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分机6.0 DDL和安全” 和 “Microsoft ActiveX数据对象2.5库”
我曾尝试多种连接字符串选项。
谢谢!
ADOX是一个只有Jet的库。无论如何,您需要使用更新的SQL Server Native Client或支持TLS 1.2的等效项,这不是VB6的责任,而是SQL Server的问题。 – Bob77
这很有道理。问题仍然是什么对象参考安装的SQL更新。 我确实在[Microsoft站点]上找到了一些支持(https://support.microsoft.com/zh-cn/help/3154518/support-for-tls-system-default-versions-included-in-the- .NET框架-3.5.1-ON-Windows的7 SP1和服务器-2008-R2的SP1)。但是现在不清楚使用哪个对象。 – user2812743
2.5之后的大部分ADO接口更改均适用于SQL Server,少数适用于Oracle。但是除非你在代码中使用它们,否则ADO 2.5可以正常工作。如果您询问提供程序和连接字符串的其余部分,请参阅SQL Server文档。 – Bob77