3

Ich versuche, App für UWP Xamarin.Forms mit der Verwendung von Azure Mobile SQLiteStore Paket zu schreiben.DLL 'sqlite3.dll' konnte nicht geladen werden: Das angegebene Modul konnte nicht in UWP gefunden werden Xamarin.Forms

Ich habe Probleme mit SQLitePCL-Paket, die Abhängigkeit von dem oben genannten Paket ist.

In meinem UWP-Projekt verwiesen I Erweiterung SQLite für Universal Windows-Plattform auch

Fehler Abhängigkeit Microsoft.VCLibs es ist: Kann DLL ‚sqlite3.dll‘ laden: Das angegebene Modul konnte nicht gefunden werden. (Ausnahme von HRESULT: 0x8007007E)

Android App funktioniert gut, nur UWP hat dieses Problem Absturz App, sobald es beginnt, SQLite aufrufen.

Und Stacktrace:

at SQLitePCL.SQLiteConnection.SetTemporaryDirectory() 
at SQLitePCL.SQLiteConnection..ctor(String fileName, SQLiteOpen openFlag, Boolean setTemporaryDirectory) 
at Microsoft.WindowsAzure.MobileServices.SQLiteStore.MobileServiceSQLiteStore..ctor(String fileName) 
at WellDoneIt.Services.WellDoneItMobileService.d__7.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.GetResult() 
at WellDoneIt.Services.WellDoneItMobileService.d__8.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
at WellDoneIt.ViewModel.ListViewModel.d__4.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.GetResult() 
at WellDoneIt.ViewModel.ListViewModel.<<-ctor>b__2_2>d.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.b__6_0(Object state) 
at System.Threading.WinRTSynchronizationContext.Invoker.InvokeCore() 

Wer weiß, wie dieses Problem zu lösen?

aktualisieren: Ich habe auch Doppelprozessorarchitektur geprüft und für Emulator wird auf x86 gesetzt und für echtes Win10 Mobile-Gerät wird auf ARM gesetzt.

Auf beide bekommen genau das gleiche Problem. Wenn ich jedoch meine App auf dem lokalen Computer starte (mein Windows 10 OS, auf dem ich arbeite), funktioniert alles einwandfrei.

Vielen Dank im Voraus.

+0

Stellen Sie sicher, dass Sie keine CPU für Ihre Build-Ausgabe verwenden. Es sollte x86 oder ARM sein, je nachdem, auf was Sie gerade laufen. –

+0

Hab das sortiert. Für Emulator x86 und für echtes Gerät ARM, im UWP-Projekt. Für PCL DLL habe ich AnyCPU, ich denke, das ist richtig eingerichtet. Danke für den Kommentar. – hal9k2

Antwort

5

Sie müssen einen Verweis auf SQLite für Windows-Plattformen hinzufügen.

Wechseln Sie in Ihrem UWP-Projekt zu Referenzen hinzufügen.

Go Universal Fenster> Erweiterungen

Dann stellen Sie sicher, SQLite für Universal-App-Plattform tick

+0

Danke für die Antwort. Ich kenne diese Erweiterung für UWP und Windows 8 Apps. Habe die neueste Version davon, genauso wie die VC++ - Abhängigkeit, alle sind auf mein Projekt bezogen, aber aus irgendeinem Grund bekomme ich diesen Fehler. – hal9k2

1

ich stundenlang mit zu kämpfen haben, was das gleiche Problem sein könnte.

Ich habe die SQLite auf die neueste Version aktualisiert und ich denke, dass hier das Problem begann.

Ich habe Visual Studio 2015 Update 2 heruntergeladen, ausgeführt und ausgewählt ändern. Dann wurde sichergestellt, dass alle hervorgehobenen Updates angekreuzt waren und die veralteten Elemente nicht angekreuzt waren. (Update 2 ist in der neuesten Community-Download enthalten)

Ich hoffe, das funktioniert für Sie.

+0

Was meinst du mit deiner Antwort ist, die neueste Community VS 2015 herunterzuladen? Wenn ja, muss ich Ihnen sagen, dass meine Probleme gleich nach der Neuinstallation von System und VS2015 Update 2, die vor wenigen Tagen heruntergeladen wurden, auftreten. Bevor ich auf meiner alten Windows-Installation mit älteren, aber ständig aktualisierten VS2015 Community entwickelt habe und alles funktionierte. Als ich mein System neu installieren musste (für einige andere nicht verwandte Probleme). Ich habe das neueste VS2015 Update 2 aus dem Internet installiert, mit Tools, die für Xamarin benötigt werden, und alle notwendigen Updates vorgenommen. Dann hat mich dieses Problem getroffen ... Danke für die Antwort. – hal9k2

+1

Meine muss ein anderes Problem gewesen sein, auch zu Ihrer Information scheint es Probleme auf der SQLite-Website zu geben, aber es wurden keine Lösungen angeboten. Viel Glück. – peterincumbria

+0

Kannst du den Link hier teilen, kannst du dort nichts finden. Danke – hal9k2