Индексный сервис в классическом 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."

РЕШЕНИЕ: установите исправление со ссылочного сайта

Другие вопросы по тегам