Packaging and deployment of .net Compact Framework solutions

How did you go about this: 1) did you use exe and dlls or created a cab file? 2) as far as deployment goes, did you implement a web service updater or use a third party deployment tool?

Any help/ideas is appreciated. Thanks!

Answers


Definitely go with CAB and MSI files. See this great article in MSDN for details. CAB files are created with Visual Studio's Set Up projects. It is very easy to create a CAB file that contains your exe, dll and configuration files. You can instruct where these files should be copied to. You can also add registry values. Another good feature is that CAB files wont install in an incompatible platform.

With a little bit of more effort you can create a MSI installer. In it you can bundle more than one CAB files, one for every platform you want to support. Since you are not using ActiveSync, this is not much of an option for you.

For updating applications, this is another good article. Although it is old, I think that it still presents some useful ideas.

My recommendation is to use CAB files both for installation and updating the application. There is a relevant question here in SO about how to update an application over the air.


Generally the installation for .NET CF apps is done via a CAB file. If you're talking an enterprise level, devices like Motorola/Symbol have an optional central server appliance that can manage all this for you and push applications down to devices.

Other than that, if you want to do auto-updating of your .NET CF application, this is definitely possible using a web service to check version #, and then download a list of updated files returned from the web service.

The trick there though is that you can't update files that are already in use. So to accomplish this I have had great success with downloading the files to the application directory with a ".update" on the end of the file extension. Then on the next application restart, the first thing before the application binds to other assemblies, it updates everything with the ".update" extension.


Need Your Help

Unsupported GLSL Shaders

java opengl glsl shader notsupportedexception

for a class I have to use Java, jogl and lwjgl.

Tips on debugging segmentation faults when no leaks are found

c debugging memory-management segmentation-fault valgrind

I wrote a C-based application that appears to run fine, except on very large datasets as input.

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.