Click here to Skip to main content
15,917,709 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I have many Win CE 6/7 based devices in Production site, and I want to update device code i.e .CAB file in all of the devices remotely, same as how Windows/Android phone downloads its updates from somewhere. (Currently I will be doing manually copy-paste the .CAB file in NANDFLASH of each device and installing it.)

for that I need to download my code file (.CAB file which contains .EXEs and .DLLs) from Remote server(say FTP server) into the NANDFLASH of my Win CE device so that newly updated code can be installed in the device.

How can I achieve this Remotely Downloading and Updating the Code of Win CE device using C# and .Net Compact Framework 3.5 on Win CE 6/7 platform?

Any help will be appreciated.

Thanks in advance,

Vijay
Posted

1 solution

This is the outline of what I have done:
1) the .dll and .exe files for the CE device are stored in a database table like this
SQL
CREATE TABLE tbl_sys_modulfiles(
    file_name varchar(80) NOT NULL,
    file_size int NULL,
    file_date datetime NULL,
    file_version varchar(50) NULL,
    upload_date datetime NULL,
    file_data varbinary(max) NULL,
 CONSTRAINT tbl_sys_modulfiles_pk PRIMARY KEY CLUSTERED
(
    file_name ASC
)

as the CE client application works with the database anyway, this seems to me like a place where the application has to look anyway.
2) programm start is performed in two steps
2.1) a launcher checks if the versions local on the device are up to date
if not, they are updated from the data in the varbinary column
2.2) after checking and updating the launcher starts the 'real' application.

There are some artikels here on codeproject that descript these sorts of 'self-update'. Worked well for me for some years now with ca. 20 devices
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900