- C# проект/Visual Studio 2015
- Сборка ПК для Windows 7 Pro 64 бит
- Клиент PC Windows 7 32 бит (x86)
- SQL Server Compact 4.0 /. NET Framework 4,5
Код:SQL Server Compact 4.0 не работает на x86
/// <summary>
/// Connects this instance.
/// </summary>
/// <returns></returns>
public bool Connect()
{
bool connected = true;
string cs = Properties.Settings.Default.ConnectionString;
try
{
cnn = new SqlCeConnection(cs);
cnn.Open();
connected = true;
}
catch(System.ArgumentException ae)
{
connected = false;
if(ae.HResult == -2146233067)
{
MessageBox.Show("Please check database location setting", "Arkema Database Connection Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
return connected;
}
catch(SqlCeException ex)
{
connected = false;
MessageBox.Show(ex.ToString(), "Arkema Database Connection Error", MessageBoxButton.OK, MessageBoxImage.Error);
return connected;
}
return connected;
}
файл БД НЕТ T поврежден и НЕ зашифрован. Приложение работает так, как это предусмотрено на ПК сборки.
Получение следующее сообщение об ошибке, когда приложение пытается подключиться к базе данных на клиентском компьютере:
System.Data.SqlServerCe.SqlCeException (x800004005): Файл базы данных может быть поврежден. Запустите утилиту восстановления, чтобы проверить файл базы данных.
Я использовал CompactView, чтобы восстановить базу данных и получил следующее сообщение:
System.Data.SqlServerCe.SqlCeException (x800004005): Режим шифрования базы данных недопустим ..
Я добавил файлы sqlce...40.dll
в папку приложения, и это не сработало.
Также попробовал отключить предпочитает 32bit, попробовал x86 вместо Any C PU
Помогите!
Строка подключения, пожалуйста! Что происходит, когда вы открываете файл с помощью SQL Server Compact Tolbox на клиентском компьютере? – ErikEJ
Строка соединения - это обычный «Datasource = C: \ SomeFolder \ SomeDatabase.sdf». SQL Server Compact Toolbox является надстройкой Visual Studio. Для этого потребуется Visual Studio на клиентском ПК. Используя CompactView, я вижу данные. – ConcordCA