SQLite.Interop.dll wird nach veröffentlichen nicht gefunden

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von zimbazwerg.

    SQLite.Interop.dll wird nach veröffentlichen nicht gefunden

    Hallo zusammen,

    ich bin leider derzeit an einem Problem bei dem ich seit Tagen keine Lösung finde. Ich habe ein kleines Programm geschrieben (Visual Studio 2017) das auf eine SQLite Datenbank zugreift. Über den NuGet Manager habe ich das Paket System.Data.SQLite.Core hinzugefügt. Kompiliere ich mein Programm funktioniert auch alles. Nun wollte ich das Projekt veröffentlichen.
    Starte ich allerdings das Programm nach der Installation kommt folgende Fehlermeldung:

    Ausnahmetext **************
    System.InvalidOperationException: Fehler beim Erstellen des Formulars. Weitere Informationen finden Sie in Exception.InnerException. Fehler: Die DLL "SQLite.Interop.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.. ---> System.DllNotFoundException: Die DLL "SQLite.Interop.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.

    Beim Googeln bin ich bereits darauf gestoßen die Ordner x64 x86 in das Debug Verzeichnis vor der Veröffentlichung zu kopieren. Leider führte dies bisher auch zu keiner Lösung.
    In den Einstellungen zur Veröffentlichung habe ich bereits bei SQLite die Einstellung auf "Erforderlich" gestellt.
    Hatte von euch einer das selbe Problem? Oder kennt einer eine Lösung für das Problem?


    Viele Grüße
    Hallo

    Die SQLite.Interop.dll muss sich auf jedem Fall nach dem installieren im selben Verzeichnis befinden wie deine *.exe.
    Meines wissens nach gibt es die dll für x64 und für x86.

    Kompiliert du also in AnyCPU kann es hier zu problemen kommen. Probier mal in X86 zu kompilieren/veröffentlichen.
    Ich denke das könnte abhilfe schaffen.

    Schöne Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    So, erstmal Entschuldigung für die späte Antwort.
    Vielen Dank für die Antworten. Ich hab das Problem nun folgendesmaßen gelöst bekommen:

    Im Projektmappen-Exporer muss man unter "My Project"->"Hinzufügen"->"Vorhandes Element hinzufügen* die "SQLite.Interop.dll"-Datei hinzufügen. Bei den Eigenschaften dieser Datei muss man "Immer kopieren" gewählt werden. Dabei wird diese Datei beim veröffentlichen mit kopiert.
    Ich habe dabei bisher kein Unterschied für x64 und x86 gefunden.

    Bei mir funktioniert das nun soweit! Vielen Dank!