ИСПРАВИТЬ: Исключение System.Runtime.InteropServices.COMException возникает при использовании COM-компонентов в платформа.NET Framework 2.0 для доступа к данным формы и данные строки запроса, содержащей знак табуляции

ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.

Эта статья на английском языке: 973746
Проблема
Рассмотрим следующий сценарий в Microsoft платформа.NET Framework 2.0:
  • В котором имеется Microsoft ASP.NET веб-страницы AspCompat атрибут имеет значение True.
  • Отправить данные формы и данные строки запроса с помощью события apostback. Кроме того данные содержат символ табуляции.
  • При попытке доступа к встроенным объектам ASP (ASP) с помощью COMcomponents.
В этом случае происходит сбой и появляется следующее сообщение об ошибке:
Описание: Во время выполнения текущего веб-запроса произошло необработанное исключение. Просмотрите трассировку стека для получения дополнительных сведений об этой ошибке и месту ее возникновения в коде.

Сведения об исключении: System.Runtime.InteropServices.COMException: катастрофический сбой (исключение из HRESULT: 0x8000FFFF (значение E_UNEXPECTED))
Причина
Эта проблема возникает, когда данные формы или строки запроса данных маршалируется из управляемого кода в машинный код. В этом случае данные кодируются как строка. Кроме того символ табуляции используется для разделения различных элементов. Тем не менее когда данные уже есть запись значений, содержащих символ табуляции, новой представленной символ табуляции повреждает данные в машинный код во время процесса декодирования.
Решение

Сведения об исправлении

Исправление от корпорации Майкрософт доступно. Тем не менее он предназначен только для устранения проблемы, описанной в этой статье. Предлагаемое исправление должно применяться исключительно в системах, в которых обнаружена эта специфическая неполадка. Это исправление может проходить дополнительное тестирование. Таким образом Если вы не подвержены серьезно эту проблему, рекомендуется дождаться следующего пакета обновления, содержащего это исправление.

Для немедленного решения этой проблемы обратитесь в службу поддержки пользователей Майкрософт для получения исправления. Полный список телефонов службы поддержки клиентов корпорации Майкрософт и сведения о стоимости поддержки посетите следующий веб-сайт корпорации Майкрософт:Примечание В особых случаях оплата, предусмотренная за обращение в службу поддержки может быть отменена, если специалист службы технической поддержки Майкрософт определит, что обновление будет решением проблемы. Затраты на обычные услуги службы поддержки будут применяться к дополнительным вопросам и проблемам, которые не охватываются конкретным обновлением.

Предварительные условия

Необходимо иметь Microsoft платформа.NET Framework 2.0 Пакет обновления 2 (SP2) для установки этого исправления.

Необходимость перезагрузки

Необходимо перезагрузить компьютер после установки этого исправления при условии, что соответствующие связанные библиотеки DLL не использовались при применении исправления.

Сведения о замене исправлений

Это исправление не заменяет других исправлений.

Сведения о файлах

Английская версия данного исправления содержит атрибуты файла (или более поздние атрибуты файлов), приведенные в следующей таблице. Дата и время для этих файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, откройте вкладку Часовой пояс элемента Дата и время в панели управления.
Для всех поддерживаемых версий x86 под управлением Windows Server 2000, Windows Server 2003 и Windows XP
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406030,54404 августа 2009 г.05:01x86
System.Web.dll2.0.50727.40605,242,88004 августа 2009 г.05:01x86
Webengine.dll2.0.50727.4060435,53604 августа 2009 г.05:01x86

Для всех поддерживаемых версий x64 под управлением Windows Server 2000, Windows Server 2003 и Windows XP
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406042,32004 августа 2009 г.09:33x64
System.Web.dll2.0.50727.40605,255,16804 августа 2009 г.09:37x64
Webengine.dll2.0.50727.4060744,25604 августа 2009 г.09:33x64

Для всех поддерживаемых IA-64-разрядных версий Windows Server 2000, Windows Server 2003 и Windows XP
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406082,25604 августа 2009 г.00:43IA-64
System.Web.dll2.0.50727.40604,771,84004 августа 2009 г.00:45IA-64
Webengine.dll2.0.50727.40601,229,12004 августа 2009 г.00:44IA-64

Для всех поддерживаемых версий x86 под управлением Windows Vista с пакетом обновления 2 и Windows Server 2008 SP2
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406130,52812 августа 2009 г.07:04x86
Webengine.dll2.0.50727.4061435,52012 августа 2009 г.07:05x86
System.Web.dll2.0.50727.40615,242,88012 августа 2009 г.07:04x86

Для всех поддерживаемых версий x64 под управлением Windows Vista с пакетом обновления 2 и Windows Server 2008
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406142,32012 августа 2009 г.07:04x64
Webengine.dll2.0.50727.4061744,25612 августа 2009 г.07:04x64
System.Web.dll2.0.50727.40615,255,16812 августа 2009 г.07:04x64

Для всех поддерживаемых IA-64-разрядных версий Windows Server 2008 SP2
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Aspnet_wp.exe2.0.50727.406182,24012 августа 2009 г.07:05IA-64
Webengine.dll2.0.50727.40611,229,12012 августа 2009 г.07:05IA-64
System.Web.dll2.0.50727.40614,771,84012 августа 2009 г.07:05IA-64
Для всех поддерживаемых 32-разрядных версий Windows 7
Имя файлаВерсия файлаРазмер файлаДатаВремя
Aspnet_wp.exe2.0.50727.493730,54417 ноября 2009 г.23:30
Webengine.dll2.0.50727.4937436,04817 ноября 2009 г.23:30
System.Web.dll2.0.50727.49375,246,97617 ноября 2009 г.23:30
Для всех поддерживаемых версий Windows 7and для Windows Server 2008 R2 для систем на базе x64
Имя файлаВерсия файлаРазмер файлаДатаВремя
Aspnet_wp.exe2.0.50727.493742,32017 ноября 2009 г.23:30
Webengine.dll2.0.50727.4937744,78417 ноября 2009 г.23:30
System.Web.dll2.0.50727.49375,255,16817 ноября 2009 г.23:30
Для всех поддерживаемых версий Windows Server 2008 R2 для систем на базе процессоров IA-64
Имя файлаВерсия файлаРазмер файлаДатаВремя
Aspnet_wp.exe2.0.50727.493782,25617 ноября 2009 г.23:30
Webengine.dll2.0.50727.49371,230,67217 ноября 2009 г.23:30
System.Web.dll2.0.50727.49374,775,93617 ноября 2009 г.23:30
Временное решение
Чтобы обойти эту проблему, избегать вызова метода AspCompatRequest::get_Form в COM-компоненты или вручную кодировать символы табуляции во входных данных.
Статус
Корпорация Майкрософт подтверждает, что это проблема продуктов Майкрософт, перечисленных в разделе "Относится к".

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 973746 — последний просмотр: 06/12/2016 06:08:00 — редакция: 8.0

Microsoft .NET Framework 2.0 Service Pack 2, Microsoft .NET Framework 2.0, Microsoft .NET Framework 2.0 Service Pack 1 (x86)

  • kbexpertiseadvanced kbsurveynew kbqfe kbmt KB973746 KbMtru
Отзывы и предложения