Update: Fehlermeldung beim Ausführen einer SQL Server Compact 3.5-basierten Anwendung nach der Installation von 32-Bit-Version von SQL Server Compact Edition 3.5 Service Pack 2 auf einem X 64-computer

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 974247 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Auf 64-Bit-Computern kann eine SQL Server Compact ("Compact") basierte Anwendung mit einem der folgenden beiden Symptome fehlschlagen:
Symptom 1
Die Anwendung versucht, eine Version von Compact zu laden, die mit der Version nicht kompatibel ist, auf dem Computer installiert ist. Falsche Versionen zu Anwendungsinstabilität führen könnte, und das Laden von Compact abgebrochen würde.

Symptom 2
Die Anwendung kann nicht die systemeigenen Komponenten von SQL Server Compact geladen werden, die der Anbieter ADO.NET entspricht.

Im folgenden werden die genauen Ausnahmen, die zu diesen Problemen gehören:

Version-Mismatch-Ausnahme
Versionskonflikt zwischen ADO.NET Anbieter und systemeigene Binärdateien von SQL Server Compact eine fehlerhafte Funktionen führen könnte. Dies könnte durch das Vorhandensein mehrerer Instanzen von SQL Server Compact verschiedener Versionen. Installieren Sie SQL Server Compact-Binärdateien übereinstimmende Version [ADO.NET Provider Dateiversion = XXXX, systemeigene Binary Dateiversion JJJJ =]

Unable to ME Ausnahme Dll geladen werden"
Kann nicht zum Laden der DLL 'sqlceme35.dll': das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E)

Ursache

Compact-basierten Anwendungen Programmieren in der Regel kompakte ADO.NET-Anbieter (System.Data.SqlServerCe.dll). Dieser Anbieter wiederum kommuniziert mit den systemeigenen Compact Komponenten. Um verschiedene Inkonsistenzen zu vermeiden, kann ein kompakten ADO.NET Anbieter einer bestimmten Version nur für die Compact systemeigenen Komponenten von der gleichen Version sprechen. Im folgenden werden einige Beispielszenarien, in denen diese Richtlinie unterbrochen, und das führt zu einer der zuvor genannten zwei Ausnahmen:

Beispielszenario 1

Installieren Sie SQL Server 2008 R2 (32-Bit-Version von SQL Server Compact 3.5 SP2 wird installiert).Klicken Sie dann, wenn Sie eine 64-Bit-Anwendung privat Bereitstellen von SQL Server Compact SP1 ausführen, schlägt es mit der Ausnahme "Versionskonflikt" fehl.

Grund für den Fehler

  • Bei 32-Bit-Version von SQL Server Compact 3.5 SP2 installiert ist, fügt den ADO.NET-Anbieter (System.Data.SqlServerCe.dll) der Version 3.5.8080 auf den globalen Assemblycache (GAC) und die Komponenten unter dem Ordner "% Programme(x86)" angeordnet werden systemeigene X 86 hinzu.
  • Ausführung die 64-Bit-Anwendung, die von SQL Server Compact SP1 privat bereitgestellt ADO.NET-Anbieter wird von GAC (Version 3.5.8080) geladen, jedoch systemeigene 64-Bit-Komponenten aus dem Anwendungsordner, Version 3.5.5692.0 geladen werden.
  • Es liegt ein Versionskonflikt der gemäß der Richtlinie nicht aktiviert ist.

Beispielszenario 2

  • X 86-Version von SQL Server Compact 3.5 SP1 wird auf einem 64-Bit-Computer installieren.
  • Anschließend installieren Sie die X 64-Version von SQL Server Compact 3.5 SP1.
  • Auf demselben Computer downloaden und installieren die 32-Bit-Version von SQL Server Compact 3.5 SP2 aus dem Web.
  • Sie führen eine 64-Bit-Anwendung, die SQL Server Compact SP1 oder SP2 verwendet.
  • Wenn Sie die Anwendung ausführen, schlägt Sie mit "Kann nicht die ME-Dll laden" Ausnahme.

Grund für Fehler

  1. Installieren die 32-Bit-Version von SQL Server Compact 3.5 SP2 aktualisiert SQL Server Compact 3.5 SP1, x 86-Installationen auf SQL Server Compact 3.5 SP2. Es führt die X 86-Installation von CD, die sich von der X 64-Installation wird.
  2. Wenn auf dem Computer eine 64-Bit-Anwendung, die verwendet der Compact SP1 oder SP2, ausgeführt wird, wird der Anbieter ADO.NET aus dem GAC (Version 3.5.8080) geladen. Allerdings kann es nicht systemeigene Binärdateien derselben Version auf dem System finden. Aus diesem Grund wird die Ausnahme ausgelöst.

Lösung

Zu einem bestimmten Zeitpunkt Zeit würde der richtige Status von einem 64-Bit-Computer für SQL Server Compact folgende sein:
  • X 86 und amd64-MSIs werden installiert.
  • X 86- und amd64-MSIs werden von der gleichen Version.

Wenn Sie alle ähnlichen Problemen konfrontiert sind, stellen Sie daher sicher, dass der Computer verfügt über beide X 86 und amd64-MSIs der Compact installiert sind und sie der gleichen Version sind. Falls dies nicht der Fall, sollten Sie Compact SP2 X 86 und X 64 MSIs dann über folgenden Link installieren, je nach Bedarf:
http://www.Microsoft.com/downloads/details.aspx?FamilyID=E497988A-C93A-404C-B161-3A0B323DCE24&displaylang=en

Status

Microsoft hat bestätigt, dass dieses Problem auf die im Abschnitt "Gilt für" aufgeführten Microsoft-Produkten zutrifft.

Eigenschaften

Artikel-ID: 974247 - Geändert am: Sonntag, 14. Juli 2013 - Version: 3.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server Compact 3.5
Keywords: 
kbhotfixserver kbsurveynew kbqfe kbmt KB974247 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 974247
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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