Deployment 使用我的Windows Mobile应用程序部署SQL Server CE

Deployment 使用我的Windows Mobile应用程序部署SQL Server CE,deployment,windows-mobile,sql-server-ce,Deployment,Windows Mobile,Sql Server Ce,我已经编写了一个Windows Mobile Standard/Smartphone应用程序(我的第一个),它使用SQL Server Compact Edition数据库作为后端。我在VisualStudio的emulator中测试时没有问题,因为它为我将SQLServerCE安装到了emulator中。但是,当我创建部署项目时,手机上安装的CAB文件很好,但无法运行,因为它找不到sqlserverce库 SQL Server CE是否需要像.NET CF 3.5那样作为单独的CAB安装?如果

我已经编写了一个Windows Mobile Standard/Smartphone应用程序(我的第一个),它使用SQL Server Compact Edition数据库作为后端。我在VisualStudio的emulator中测试时没有问题,因为它为我将SQLServerCE安装到了emulator中。但是,当我创建部署项目时,手机上安装的CAB文件很好,但无法运行,因为它找不到sqlserverce库

SQL Server CE是否需要像.NET CF 3.5那样作为单独的CAB安装?如果是这样,我在哪里可以得到这个(我在微软的网站上没有找到类似的东西)?或者我可以只在部署中包含
System.Data.SqlServerCe.dll
文件吗

编辑:


我将上面提到的DLL添加到部署中,它工作正常,因此回答了我最初的问题。但我有更多应用程序的想法,其中大多数也将使用SQLServerCE。与其在每次安装时都包含DLL的副本,我更希望为SQLServerCE库提供一个源代码。我想我可以只为DLL创建自己的安装文件夹,但我想可能有一种更“正式”的方法来实现这一点。现在我回到我的第一个初始问题:是否有SQL Server CE的CAB?如果用户已经有文件,我就不想安装,如果不需要,我当然也不想安装副本。

我想我的手指比我的大脑移动得快。以下是针对Sql Server Compact的mobile edition安装:

编辑:

我想为任何遇到这篇文章的人添加更多信息,寻找与我相同的信息

首先,我发现有两种方法可以将SqlCe包含在移动应用程序中:要么使用安装CAB,要么将七个SqlCe DLL包含在应用程序中。就我个人而言,我选择前者是为了其他应用程序可以使用SqlCe。我的设备的所有文件(CAB或DLL)都位于
C:\Program files\Microsoft SQL Server Compact Edition\v3.5\Devices\wce500\armv4i
*中,但我有一个ARM处理器,对其他处理器一无所知

对我来说,第二个问题是我自己的DLL库,我在每个项目中都包含这些DLL。我不想为我的每个应用程序都安装重复的DLL,所以我从部署项目中删除了DLL,并仅为这些文件创建了一个新的部署

我的最后一个问题是如何在不给用户带来负担的情况下安装所有东西。大多数用户不是开发人员,我不希望他们仅仅为了使用我的应用程序而安装三个单独的CAB文件(如果他们还没有.NET CF 3.5,则安装四个)。我在Multicab中找到了答案,Multicab是一个示例部署项目,它可以链接CAB文件并只安装必要的文件。这是一个C++项目(我个人在C中工作),WiMo 6 SDK中有一个白皮书,它通过创建uber CAB文件。白皮书和multicab项目可在
C:\Program Files\Windows Mobile 6 SDK\Samples\Common\CPP\Win32\multicabinstall
*上找到

希望这对别人有帮助


*假设安装是在默认目录下进行的。

您是否查看了商业选项

我在我的许多项目中都使用过移动打包机,我在这方面取得了非常好的成功

它不是开源或免费的。您必须为此付费,但这样可以节省处理部署问题的几个小时


看看吧

我喜欢这个。我现在负担不起,但攒一两个月的钱没问题。谢谢你的提醒。