Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > [SQL CE 4.0] Ошибка создания подключения на x64


Автор: KelTron 6.9.2012, 13:42
Привет,

Использую в проекте SQL CE 4.0 в режиме private installation как описано здесь:
http://erikej.blogspot.com/2011/02/using-sql-server-compact-40-with.html
http://msdn.microsoft.com/en-us/library/gg213826.aspx

В проекте Platform target = x86.Система = Windows Server 2008 R2 x64.
Пробую выполнить следующий код:
Код

var connection = SqlCeProviderFactory.Instance.CreateConnection();


1. Если запускаю из студии по F5, всё отрабатывает нормально.
2. Если запускаю .exe файл получаю следующее:
Код

System.BadImageFormatException:  is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)
   at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
   at System.Data.SqlServerCe.UnmanagedLibraryHelper..ctor(String fileName)
   at System.Data.SqlServerCe.NativeMethodsHelper..ctor(String modulePath)
   at System.Data.SqlServerCe.NativeMethods.LoadValidLibrary(String modulePath)
   at System.Data.SqlServerCe.NativeMethods.LoadNativeBinariesFromPrivateFolder(String privateInstall)
   at System.Data.SqlServerCe.NativeMethods.LoadNativeBinaries()
   at System.Data.SqlServerCe.SqlCeConnection..ctor()
   at System.Data.SqlServerCe.SqlCeProviderFactory.CreateConnection()
   at ConsoleApplication18.Program.Main(String[] args)

Если указать Platform target = AnyCPU, то работает, но этот вариант не подходит..

Кто знает как можно побороть эту проблему?

P.S. К сожалению пример загрузить не могу т.к. длл-ки SQL CE весят больше 1мб.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)