PRB: "Errors Occurred" upon Accessing Index Server 2.0 via RDSID: Q216973
|
Running a Visual Basic application using the Microsoft RDS Data Factory to access Index Server 2.0 can generate the following errors:
Run-time error '-2147217887 80040e21':
"Errors Occurred."
This happens when Running Index Server 2.0 on Windows NT 4.0 with service pack 3.0 (or an older service pack).
To resolve this run Index Server 2.0 with Windows NT 4.0 Service Pack 4 (or beyond).
Index Server 2.0 was shipped (with Windows NT Option Pack 4) before the MDAC 2.0 release. As a result, Index Server 2.0 was not tested with MDAC 2.0 components when it was released. The release of Service Pack 4 for Windows NT 4.0 included some modifications that corrected the way Index Server 2.0 works with RDS 2.0 components (or later versions).
Option Explicit
Dim RS As ADODB.Recordset
Private Sub DoQuery(HTTPServer As String)
Dim Scope, QueryText, sSQL As String
Scope = "C:\" ' Set the scope of the query
QueryText = "Index" ' Set the criteria of the query
sSQL = "SELECT Filename, Path, Size, Write FROM Scope('" + Chr(34) + _
Scope + Chr(34) + "') WHERE CONTAINS('" + Chr(34) + QueryText + _
Chr(34) + "') > 0" ' ORDER BY Rank DESC"
' Create the recordset via the data-factory
Data_Factory HTTPServer, sSQL
' Print out column titles
Debug.Print "Filename", "Path", "Size", "Write"
Debug.Print "-------------", "------", "------", "----------"
' Print out data
Do Until RS.EOF
Debug.Print RS("Filename"), RS("Path"), RS("Size"), RS("Write")
RS.MoveNext
Loop
RS.Close
Set RS = Nothing
End Sub
Private Sub Command1_Click()
Dim HTTPServer As String
Dim WebServer As String
WebServer = InputBox("What is the name of your Web (IIS) Server?")
HTTPServer = WebServer
' Execute the query
DoQuery (HTTPServer)
End Sub
Public Sub Data_Factory(HTTPServer As String, sSQL As String)
Dim DS As New RDS.DataSpace
Dim DF As Object
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://" & HTTPServer)
'next line produces error (not recognizing the provider) with NT4 SP3 or before
Set RS = DF.Query("Provider=msidxs", sSQL, adOpenDynamic)
End Sub
© Microsoft Corporation 1999, All Rights Reserved.
Contributions by Ammar Abuthuraya, Microsoft Corporation
Additional query words:
Keywords : kbDatabase kbIdxServ kbOLEDB kbVBp600 kbGrpVCDB kbGrpMDAC
Version : WINDOWS:2.0,2.1; winnt:4.0
Platform : WINDOWS winnt
Issue type : kbprb
Last Reviewed: July 14, 1999