Индексный сервис в классическом asp "такой интерфейс не поддерживается"
Я хочу использовать службу индексации Microsoft для поиска в папке, которая содержит статические страницы, ниже приведен исходный код.
<html>
<%
' This section sets the various configuration variables
formscope="/"
pagesize = 5000
maxrecords=5000
searchstring=request.form("query")
catalogtosearch="cat"
searchrankorder="rank[d]"
origsearch=searchstring
%>
<%
'This section performs the query
dim q
dim util
set q=server.createobject("ixsso.query")
set util=server.createobject("ixsso.util")
q.query=searchstring
q.catalog=catalogtosearch
q.sortby=searchrankorder
q.columns="doctitle, filename, size, write, rank, directory, path"
q.maxrecords=maxrecords
%>
<%
'This section displays the results
set rs=q.createrecordset("nonsequential")
rs.pagesize=pagesize
response.write"<p>Your search for <b>" & origsearch & "</bproduced "
if rs.recordcount=0 then response.write "no results"
if rs.recordcount=1 then response.write "1 result: "
if rs.recordcount>1 then response.write(rs.recordcount) & " results: "
%>
<table border=1><tr><td><b>Title</b></td><td><b>Filename</b></td><td><b>Date / Time</b></td><td><b>Size</b></td><td><b>Relevance</b></td><td><b>Directory</b></td></tr>
<%
do while not rs.EOF
response.write "<tr><td>" & rs("doctitle") & "</td><td>" & "<a href=" & "'" & rs("path") & "'" & ">" & rs("filename") & "</a>" & "</td><td>" & rs("write") & "</td><td>" & rs("size") & "</td><td>" & rs("rank") & "</td><td>" & rs("directory") & "</td></tr>"
rs.movenext
loop
response.write "</table>"
set rs=nothing
set q=nothing
set util=nothing
%>
</body>
</html>
Я добавил каталог в компьютер -> управление -> служба индексирования, и в каталог cat я также добавляю каталог, но когда я запускаю скрипт выше, возникает ошибка:
Ошибка CreateRecordset '80004002'
Такой интерфейс не поддерживается
/cat/SearchResults.asp, строка 31
Кто-нибудь знает в чем ошибка? Благодарю.
1 ответ
Так как мой оригинальный ответ был удален по непонятной причине, я пытаюсь ответить на ваш вопрос снова.
как вы могли видеть по этой ссылке: "Вы не можете использовать IXSSO для запроса каталога Index Server после установки исправления 2698365 в Windows 7 или Windows Server 2008 R2".
я копирую текст со связанной страницы в свой ответ, потому что @Mario хочет, чтобы:
СИМПТОМЫ: после установки обновления 2698365 на компьютер под управлением Windows 7 или Windows Server 2008 R2 вы не можете запрашивать каталог сервера индекса с помощью компонента IXSSO. В частности, когда вы пытаетесь вызвать метод IXSSO.Query.CreateRecordset, вы получаете сообщение об ошибке, похожее на следующее: Такой интерфейс не поддерживается -2147467262
ПРИЧИНА:"Эта проблема возникает, потому что старая установка объектов данных ActiveX (ADO) удаляется после установки обновления 2698365."
РЕШЕНИЕ: установите исправление со ссылочного сайта