Changes

Jump to: navigation, search

Windows Service Silent Update

395 bytes removed, 14:14, 6 January 2012
How the service works
== How the service works ==
 
As soon as the service is started, it will watch a directory for new files. These new files are called 'work items'.
 
The directory being watched on Vista and above can be found here: <br>C:\ProgramData\Mozilla\updates <br>
 
The directory being watched on Windows XP and below can be found in: <br>C:\Documents and Settings\All Users\Application Data\Mozilla\updates
Since the service is only started when needed, we pass the information to the service via command line on service start.
The service security will be modified with a special [http://msdn.microsoft.com/en-us/library/aa379298.aspx ACE] which allows non elevated processes to start and stop it. Setting these permissions on the service is needed because by default services can only be started and stopped by elevated processes. This is possible via the Win32 API [http://msdn.microsoft.com/en-us/library/windows/desktop/aa379589%28v=vs.85%29.aspx SetServiceObjectSecurity].
The service will log all operations of the last update, as well as backup the 5 update operation logs before it. The install process and update processes will also be logged separately. The logs will live in a directory alongside the updates directory being watched called logsall users application data.
Since the service executes an update via updater.exe in session 0, no UI will be displayed. A UI could be displayed by running updater.exe with a user token instead, but to avoid permission problems on files, and inconsistencies in different OS versionsand user types, the update will always be run as session 0.
== A single service and service versioning ==
Confirm
394
edits

Navigation menu