Windows 7(x64), VS 2015, .NET 4.6.1
SQLite = sqlite-netFx46-binary-x64-2015-1.0.99.0.zip
SQLite-Browser = http://sqlitebrowser.org/
Ich habe eine Datenbank kasse.db erstellt mit dem o. g. Browser.
Der Verweis funktioniert soweit, allerdings kommt die Fehlermeldung bei new SQLiteConnection():
"Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)"
Einstellungen im Projekt ist "Any CPU".
Die DLLs sind für 64bit.
Warum entsteht hier ein Konflikt zu 32 oder 64bit?
Hier der Code-Ausschnitt:
[highlight=csharp]
public string DatenbankName { get; set; }
...
public bool DatenbankOeffnen()
{
if (string.IsNullOrEmpty(DatenbankName))
{
MessageBox.Show("Es fehlt die Übergabe der Eigenschaft für den Datenbanknamen.");
return false;
}
try
{
_con = new SQLiteConnection();
_con.ConnectionString = string.Format("Data Source={0};Version=3;New=False;Compress=True;", DatenbankName);
_con.Open();
return true;
}
catch (Exception ex)
{
string s = string.Format("Die Datenbank {0} konnte nicht geöffnet werden.\r\n{1}\r\n{2}", DatenbankName, ex.Message, ex.StackTrace);
MessageBox.Show(s, "Fehler beim Öffnen der Datenbank", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
[/highlight]
Beim Installieren von SQLite kommt dann folgender Fehler
Ich habe schon die Foren durchsucht und auch ähnliches gelesen. Anscheinend funktioniert nur x86. Das würde ich ungern nehmen.
Vielen Dank für Eure Hilfe
SQLite = sqlite-netFx46-binary-x64-2015-1.0.99.0.zip
SQLite-Browser = http://sqlitebrowser.org/
Ich habe eine Datenbank kasse.db erstellt mit dem o. g. Browser.
Der Verweis funktioniert soweit, allerdings kommt die Fehlermeldung bei new SQLiteConnection():
"Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)"
Einstellungen im Projekt ist "Any CPU".
Die DLLs sind für 64bit.
Warum entsteht hier ein Konflikt zu 32 oder 64bit?
Hier der Code-Ausschnitt:
[highlight=csharp]
public string DatenbankName { get; set; }
...
public bool DatenbankOeffnen()
{
if (string.IsNullOrEmpty(DatenbankName))
{
MessageBox.Show("Es fehlt die Übergabe der Eigenschaft für den Datenbanknamen.");
return false;
}
try
{
_con = new SQLiteConnection();
_con.ConnectionString = string.Format("Data Source={0};Version=3;New=False;Compress=True;", DatenbankName);
_con.Open();
return true;
}
catch (Exception ex)
{
string s = string.Format("Die Datenbank {0} konnte nicht geöffnet werden.\r\n{1}\r\n{2}", DatenbankName, ex.Message, ex.StackTrace);
MessageBox.Show(s, "Fehler beim Öffnen der Datenbank", MessageBoxButton.OK, MessageBoxImage.Error);
return false;
}
}
[/highlight]
Beim Installieren von SQLite kommt dann folgender Fehler
...
Installer.exe: #050 @ 2016.02.10T14:28:35.5965459: IsEf6Supported: False
Installer.exe: #051 @ 2016.02.10T14:28:35.5965459: IsEf6AssemblyGlobal: False
Installer.exe: #052 @ 2016.02.10T14:28:35.5975460: UseEf6Provider: False
Installer.exe: #053 @ 2016.02.10T14:28:35.5975460: GetCoreAssemblyName: "System.Data.SQLite, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #054 @ 2016.02.10T14:28:35.5985461: GetLinqAssemblyName: "System.Data.SQLite.Linq, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #055 @ 2016.02.10T14:28:35.6005463: GetEf6AssemblyName: <null>
Installer.exe: #056 @ 2016.02.10T14:28:35.6015464: GetDesignerAssemblyName: "SQLite.Designer, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #057 @ 2016.02.10T14:28:35.6015464: GetInvariantName: "System.Data.SQLite"
Installer.exe: #058 @ 2016.02.10T14:28:35.6025465: GetConfigInvariantName: "System.Data.SQLite"
Installer.exe: #059 @ 2016.02.10T14:28:35.6035466: GetProviderInvariantName: "System.Data.SQLite"
Installer.exe: #060 @ 2016.02.10T14:28:35.6035466: GetFactoryTypeName: "System.Data.SQLite.SQLiteFactory"
Installer.exe: #061 @ 2016.02.10T14:28:35.6045467: GetProviderAssemblyName: "System.Data.SQLite, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #062 @ 2016.02.10T14:28:35.6065469: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #063 @ 2016.02.10T14:28:35.6075470: TraceOps.ShowMessage: Cannot continue, the "confirm" option is not enabled.
Installer.exe: #050 @ 2016.02.10T14:28:35.5965459: IsEf6Supported: False
Installer.exe: #051 @ 2016.02.10T14:28:35.5965459: IsEf6AssemblyGlobal: False
Installer.exe: #052 @ 2016.02.10T14:28:35.5975460: UseEf6Provider: False
Installer.exe: #053 @ 2016.02.10T14:28:35.5975460: GetCoreAssemblyName: "System.Data.SQLite, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #054 @ 2016.02.10T14:28:35.5985461: GetLinqAssemblyName: "System.Data.SQLite.Linq, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #055 @ 2016.02.10T14:28:35.6005463: GetEf6AssemblyName: <null>
Installer.exe: #056 @ 2016.02.10T14:28:35.6015464: GetDesignerAssemblyName: "SQLite.Designer, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #057 @ 2016.02.10T14:28:35.6015464: GetInvariantName: "System.Data.SQLite"
Installer.exe: #058 @ 2016.02.10T14:28:35.6025465: GetConfigInvariantName: "System.Data.SQLite"
Installer.exe: #059 @ 2016.02.10T14:28:35.6035466: GetProviderInvariantName: "System.Data.SQLite"
Installer.exe: #060 @ 2016.02.10T14:28:35.6035466: GetFactoryTypeName: "System.Data.SQLite.SQLiteFactory"
Installer.exe: #061 @ 2016.02.10T14:28:35.6045467: GetProviderAssemblyName: "System.Data.SQLite, Version=1.0.99.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
Installer.exe: #062 @ 2016.02.10T14:28:35.6065469: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #063 @ 2016.02.10T14:28:35.6075470: TraceOps.ShowMessage: Cannot continue, the "confirm" option is not enabled.
Vielen Dank für Eure Hilfe
Comment