Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation Windows CE 6.0-将SQL Server CE 3.5安装到运行时映像中_Installation_Sql Server Ce_Windows Ce_Platform Builder - Fatal编程技术网

Installation Windows CE 6.0-将SQL Server CE 3.5安装到运行时映像中

Installation Windows CE 6.0-将SQL Server CE 3.5安装到运行时映像中,installation,sql-server-ce,windows-ce,platform-builder,Installation,Sql Server Ce,Windows Ce,Platform Builder,我做了一个应用程序,我把它放在Win CE(闪存卡)的硬盘上。我的问题是,应用程序使用的是SQL Server CE 3.5数据库,但该映像似乎是使用SQL Server CE 3.0创建的。开始构建映像时,我无法选择3.5版本 每次调试应用程序时都会部署3.5版本的DLL,因此在开发阶段不会出现问题 现在,当应用程序启动时(操作系统启动时自动启动),会弹出带有异常的消息窗口,不允许应用程序启动。我的问题是如何将SQL Server CE 3.5安装到映像中,或者如何在以后或每次启动时使用CAB

我做了一个应用程序,我把它放在Win CE(闪存卡)的硬盘上。我的问题是,应用程序使用的是SQL Server CE 3.5数据库,但该映像似乎是使用SQL Server CE 3.0创建的。开始构建映像时,我无法选择3.5版本

每次调试应用程序时都会部署3.5版本的DLL,因此在开发阶段不会出现问题

现在,当应用程序启动时(操作系统启动时自动启动),会弹出带有异常的消息窗口,不允许应用程序启动。我的问题是如何将SQL Server CE 3.5安装到映像中,或者如何在以后或每次启动时使用CAB文件进行安装

当我在运行的操作系统上运行正确的CAB文件(三个CAB)时,它将安装3.5版本并启动我的应用程序,但当我再次重新启动操作系统时,更改不会保存并提交。必须有一个解决方案,在构建映像之前在目录中添加3.5版本,或者在每次启动时安装它,或者在第一次启动后永久安装它的最后一个选项

如果您能为我提供在每次系统启动时安装CAB的解决方案,它将对我起作用,但考虑到我必须在系统启动时运行将使用SQL Server CE 3.5数据库的应用程序,因此CAB的安装必须在应用程序自动启动之前进行


提前谢谢。

您有几个选择。最不理想的情况是在启动时运行驾驶室

一种选择是尽可能将最新的SQLCE二进制文件放入操作系统。如果您安装了所有更新的QFE,则可以在目录中找到。无论出于何种原因,如果您无法安装QFE,您始终可以替换Platfuilder在
%WINCEROOT%\OTHERS\SQLCOMPACT
上提供的源二进制文件


另一种选择是只在应用程序部署中包含所有SQLCE二进制文件。您不需要CAB,只需将DLL放在您的应用程序文件夹中即可(如果您通过此途径防止本机DLL冲突,则从操作系统中删除SQLCE是一个好主意)。这些二进制文件的源代码位于
%PROGRAM\u FILES%\Microsoft SQL Server Compact Edition\v3.5\Devices
。这实际上是我喜欢的路线,因为对SQLCE的更新不需要新的操作系统。

我同意您将二进制文件放入应用程序部署的最佳解决方案。我将尝试这样做,但通过查看其他\SQLCOMPACT,我找到了正确的二进制文件,但在我开发的图像中有一个SQLCE版本3.0。当我在正在运行的WinCE映像上安装CABs时,应用程序可以工作,但重新启动后,一切都丢失了。我将尝试你的解决方案,以便我们拭目以待。最后,我将把对我有效的解决方案放在这里。谢谢。@Patrik你的最终解决方案是什么?我用两种方法解决了我的问题。1.在启用了持久存储和注册表保存功能的映像上运行CAB。我复制了几张CF卡。二,。解决方案是将SQLCE的DLL与无论如何都保存在持久存储中的可执行文件放在一起。