使用SQL CE 4.0部署应用程序以在32位和64位PC上运行

时间:2014-12-18 14:05:16

标签: c# .net dll sql-server-ce

我打算创建一个使用SQL CE 4.0的应用程序。我看到有两种类型的部署中央和私有。所以现在我打算使用私有部署。因此,所有dll必须包含在项目中,如here所述。

但是我尝试从我的XP PC(32位)添加所有dll并且没有添加任何64位dll(但是提到添加64位dll)。然后我将平台设置为x86。构建应用程序后,我尝试在64位PC上运行我的应用程序,它运行正常。我期待它会给出错误,因为我没有包括64位dll。

所以在64位pc上正常工作的原因是由于我设置的x86平台?我也可以使用相同的方法部署应用程序并将其提供给我的客户(而不是分别使用32位和64位DLL)?

修改

在Windows XP PC上,我只安装.net 2.0,然后运行我的应用程序,它有sql ce 4.0 SP1私有部署,它运行正常。

然后我在安装sql ce 4.0 sp1之后在同一台PC上测试了中央部署(在应用程序路径中没有dll),而在运行应用程序时我得到了错误,如

System.IO.FileNotFoundException: Could not load file or assembly 'System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The system cannot find the file specified.

然后我卸载了sql ce 4.0 sp1然后安装了sql ce 4.0(没有sp1),现在中央部署应用程序工作了!!那么究竟是什么问题?

在SQL CE 4.0下载页面中,提到了.net 3.5 SP1是最低要求。那么私有部署只适用于.net 2.0吗?为什么我在使用sql ce 4.0 sp1进行集中部署时遇到错误?

1 个答案:

答案 0 :(得分:1)

是的,强制x86是一种简单易用的方法,并且可以在两种桌面平台上运行良好