KB4073393 - ИСПРАВЛЕНО: ошибка "Область данных, переданная системному вызову, слишком мала" при запуске мост для классических приложений приложения на SQL Server

Применяется к
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Enterprise Core SQL Server 2012 Standard

Сводка

При запуске приложения моста для классических приложений (например, классического приложения, упакованного как приложение Windows) на сервере под управлением Microsoft SQL Server приложение не запускается и появляется следующее сообщение об ошибке:

Примечание

Область данных, передаваемая по системному вызову, слишком мала.

Причина

Эта проблема возникает из-за неправильного взаимодействия между двумя драйверами фильтра, в частности WCNFS (мост для классических приложений) и драйвером RsFxXXXX.sys (SQL Server системным драйвером FILESTREAM). Системный драйвер RsFx неправильно учитывает флаги, передаваемые драйвером WCNFS. Это приводит к сбоям запуска любого приложения моста для классических приложений.

Дополнительные сведения

Это улучшение включено в следующие накопительные пакеты обновления для SQL Server:

Накопительный пакет обновления 8 для SQL Server 2016 с пакетом обновления 1 (SP1)

Накопительный пакет обновления 3 для SQL Server 2017

Накопительный пакет обновления 11 для SQL Server 2014 с пакетом обновления 2 (SP2)

Сведения о накопительных обновлениях для SQL Server:

Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:

Последний накопительный пакет обновления для SQL Server 2016

Последний накопительный пакет обновления для SQL Server 2014

Последний накопительный пакет обновления для SQL Server 2017

Дополнительные сведения

Это улучшение включено в следующее исправление по запросу для SQL Server:

Обновление по запросу с исправлением для SQL Server 2012 SP4

Ссылки

Узнайте о терминологии , используемой корпорацией Майкрософт для описания обновлений программного обеспечения.

Дополнительные сведения о мосте для классических приложений и обходных путях для этой проблемы см. в этой статье блога MSSQL Tiger Team.