Исправление: Появляется сообщение об ошибке при запуске приложения на основе SQL Server Compact 3.5 после установки 32-разрядной версии SQL Server Compact Edition 3.5 Пакет обновления 2 на компьютере с процессором x 64

Переводы статьи Переводы статьи
Код статьи: 974247 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Проблема

На 64-разрядных компьютерах SQL Server Compact («сжать») на основе приложения может произойти сбой с одним из следующих двух симптомов:
Проблема 1
Приложение пытается загрузить версию сжатия, которая несовместима с версией, установленной на компьютере. Неправильные версии может привести к нестабильной работе приложения и загрузку сжатия будет прервана.

Случай 2
Приложение не может загрузить собственные компоненты SQL Server Compact, который соответствует поставщика ADO.NET.

Ниже приведены точные исключения, связанные с этими проблемами.

Несоответствие версии исключения
Несоответствие версий файлов между поставщик ADO.NET и собственных двоичные файлы из SQL Server Compact, который может привести к нарушению работы. Это может быть связано с наличием нескольких экземпляров SQL Server Compact разных версий. Установите SQL Server Compact двоичные файлы из соответствующей версии [версия файла поставщика ADO.NET = XXXX собственную версию двоичного файла гггг =]

Не удается загрузить МНЕ dll исключение"
Не удается загрузить sqlceme35.dll «DLL»: не удается найти указанный модуль. (Исключение из HRESULT: 0x8007007E)

Причина

Compact приложений обычно программировать Compact ADO.NET поставщика (System.Data.SqlServerCe.dll). Этот поставщик в очередь связывается с собственными компонентами Compact. Во избежание несогласованности различных определенной версии поставщика ADO.NET Compact может обмениваться данными только с Compact собственными компонентами той же версии. Ниже приведены некоторые примеры сценариев, где эта политика не будет работать, а, приведет к одной из вышеупомянутых два исключения:

Пример 1

Установите SQL Server 2008 R2 (устанавливает 32-разрядной версии SQL Server Compact 3.5 SP2).Затем при выполнении 64-разрядного приложения, развертывание SQL Server Compact SP1 в частном порядке, происходит сбой с исключением «Несоответствие версий».

Причина сбоя

  • При установке 32-разрядной версии SQL Server Compact 3.5 SP2, он добавляет поставщика ADO.NET (System.Data.SqlServerCe.dll) версии 3.5.8080 собственные компоненты помещаются в папку % Files(x86) программа % x 86 и глобальный кэш сборок (GAC).
  • При запуске 64-разрядные приложения, развертывание SQL Server Compact SP1 в частном порядке поставщик ADO.NET загружается из глобального кэша СБОРОК (версия 3.5.8080), но собственные 64-разрядные компоненты загружаются из папки приложения, которая является версией 3.5.5692.0.
  • Существует несоответствие версий, который согласно политике не включен.

Пример 2

  • На 64-разрядном компьютере установите x 86-версии SQL Server Compact 3.5 SP1.
  • Установите 64-разрядной версии SQL Server Compact 3.5 SP1.
  • На том же компьютере Загрузите и установите 32-разрядной версии SQL Server Compact 3.5 SP2 из Интернета.
  • Запустите 64-разрядного приложения, которое использует SQL Server Compact SP1 или SP2.
  • При запуске приложения происходит сбой с «не удается загрузить dll, ME» исключения.

Причина сбоя

  1. Установка 32-разрядной версии SQL Server Compact 3.5 SP2 обновление SQL Server Compact 3.5 SP1 x 86 приложения для SQL Server Compact 3.5 SP2. В результате установки x 86 сжатия, отличный от установки x 64.
  2. При запуске 64-разрядного приложения, использующего Compact с пакетом обновления 1 или 2 (SP2) на компьютере, он загружает поставщик ADO.NET из глобального кэша СБОРОК (версия 3.5.8080). Однако в системе не удается найти собственные двоичные файлы в той же версии. Таким образом создает исключение.

Решение

В каждый момент времени правильное состояние 64-разрядном компьютере, для SQL Server Compact будет выглядеть следующим образом:
  • Установлен x 86 и amd64 MSI.
  • X 86 и amd64 MSI имеют ту же версию.

Таким образом если сталкиваются все аналогичные проблемы, убедитесь, что на компьютере установлены оба x 86 и amd64 MSI из Compact установлены и находятся в той же версии. В случае они не установите MSI Compact SP2 x 86 и x 64 из следующей ссылке при необходимости:
http://www.Microsoft.com/downloads/details.aspx?FamilyId=E497988A-C93A-404C-B161-3A0B323DCE24&displaylang=en

Статус

Данное поведение является подтвержденной ошибкой продуктов Майкрософт, перечисленных в разделе «Информация в данной статье применима к:».

Свойства

Код статьи: 974247 - Последний отзыв: 10 марта 2013 г. - Revision: 7.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server Compact 3.5
Ключевые слова: 
kbHotfixServer kbsurveynew kbqfe kbmt KB974247 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке: 974247

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

 

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