Исправление: xp_enumgroups вызывает нарушение прав доступа при большой параметр передается

Переводы статьи Переводы статьи
Код статьи: 294338 - Vizualiza?i produsele pentru care se aplic? acest articol.
ОШИБКА #: 351927 (SHILOH_BUGS)
Развернуть все | Свернуть все

Проблема

xp_enumgroupsПредоставляет список локальных групп Microsoft Windows NT или список глобальных групп, определенных в указанном домене Windows NT, предоставляемых параметром.

Если передается большой параметрxp_enumgroupsсоздается хранимая процедура, нарушение прав доступа и разрывает соединение с сообщениями об ошибках, выполните:
ODBC: Сообщение 0, уровень 19, состояние 1
SqlDumpExceptionHandler: 53 процесс создания неустранимое исключение c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server завершает этот процесс.

ODBC: Сообщение 0, уровень 20, состояние 1
Хранимые функции "xp_enumgroups" в библиотеке "xplog70.dll" возникает нарушение прав доступа. SQL Server завершается процесс 53.

Неработающие подключения
Если размер строки, передаваемых в качестве параметра гораздо больше, нарушение прав доступа останавливает службу SQL Server. Возникает сообщение об ошибке будет иметь вид:
[Microsoft][Драйвер ODBC SQL Server][DBMSLPCN]ConnectionCheckForData (CheckforData()).
Сервер: Сообщение 11, уровень 16, состояние 1, строка 0
Общий сбой сети.. Проверьте по документации сети.

Решение

Чтобы решить эту проблему, получите последний пакет обновления для SQL Server 2000. Дополнительные сведения см. в следующей статье базы знаний Майкрософт::
290211INF: Как получить последний пакет обновления для SQL Server 2000

Статус

Корпорация Майкрософт подтверждает, что это проблема в SQL Server 2000.Впервые эта проблема была исправлена в SQL Server 2000 с пакетом обновления 1 (SP1).

Дополнительная информация

Эта проблема возникает только если размер строки, которая вызываетсяxp_enumgroupsбольше, чем 228 байт. Точный текст сообщения об ошибке могут различаться в зависимости от размера передается строка.

Например если строка имеет 229 байт, отображает это сообщение об ошибке:
Сервер: Сообщение 3624, уровень 20, состояние 1, процедура xp_enumgroups, строка 1

Расположение: dbccdll.cpp:516
Выражение: pElem == поиска (pElem-> m_DLLName.m_str)
SPID: 51
Идентификатор процесса: 768

Неработающие подключения
Действия для воспроизведения поведения:

Можно использовать следующие воспроизвести проблему.

  • Чтобы вызвать нарушение прав доступа в том случае, используйте следующий код:
    xp_enumgroups 'Scanning directory [C:\*]
    Scanning directory [C:\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\*]
    Scanning directory [C:\cmdcons\*]
    Scanning directory [C:\*]'
    						
  • Чтобы вызвать нарушение прав доступа, а также привести к SQL Server для остановки службы используйте следующий код:
    xp_enumgroups 'Scanning directory [C:\*]
    Scanning directory [C:\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\*]
    Scanning directory [C:\cmdcons\*]
    Scanning directory [C:\*]
    Scanning directory [C:\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\APSETUP\*]
    Scanning directory [C:\*]
    Scanning directory [C:\cmdcons\*]
    Scanning directory [C:\*]'
    						

Свойства

Код статьи: 294338 - Последний отзыв: 21 ноября 2010 г. - Revision: 2.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2000 Standard Edition
Ключевые слова: 
kbbug kbfix kbsqlserv2000sp1fix kbmt KB294338 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:294338

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com