이전 VB6 앱을 지원하라고했습니다. (yay me) ADO 연결 시간 초과 속성에 문제가 있습니다. 아래의 방법은 서버가 있으면 제대로 작동하지만 서버가 존재하지 않거나 네트워크 연결이 시스템에서 시작되지 않으면 intTimeout을 1로 설정해도 30 초가 걸리므로 시간 초과가 발생합니다.서버가 없으면 ADO 연결 시간 제한을 더 빨리 설정하려면 어떻게합니까?
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
이름 확인에 문제가 있어야합니다. DNS 만 사용하고 (브로드 캐스트 + 시간 초과 없음) [SERVER]에 IP 주소를 직접 사용하여 TCP 속도를 높일 수 있습니다. 당신의 자리에서 나는이 "성능"문제로 너무 많은 것을 신경 쓰지 않을 것입니다. – wqw