Мне поручено поддерживать старое приложение VB6. (yay me) У меня проблемы со свойством тайм-аута соединения ADO. Приведенный ниже метод работает нормально, если сервер существует, но если сервер не существует или сетевые подключения не запущены для компьютера, то потребуется тайм-аут в течение полных 30 секунд, даже если для intTimeout установлено значение 1.
Есть ли способ, чтобы ADO не смог подключиться раньше?
Это вообще возможно?
Спасибо!
Public Sub GetConnectionObject(ByRef oCn As ADODB.Connection, strServer As String, strInitialCatalog As String, Optional intTimeout = 10)
Dim strConnectionString As String
strConnectionString = "Data Source=[SERVER];Provider=SQLOLEDB.1;User ID=ScanReq1;Password=ScanR3Q;Initial Catalog=[INITIALCATALOG];ConnectionTimeout=" & intTimeout & ";"
strConnectionString = Replace(strConnectionString, "[SERVER]", strServer)
strConnectionString = Replace(strConnectionString, "[INITIALCATALOG]", strInitialCatalog)
Set oCn = New ADODB.Connection
oCn.CursorLocation = adUseClient
oCn.ConnectionString = strConnectionString
oCn.CommandTimeout = intTimeout
oCn.ConnectionTimeout = intTimeout
oCn.Open
End Sub