All About Symbian - Nokia (S60) and Sony Ericsson (UIQ) smartphones unwrapped

  #1  
Old 13-09-2005, 08:45 AM
skauting skauting is offline
Registered User
 
Join Date: Sep 2005
Posts: 5
skauting is on a distinguished road
Question How to uninstall app using residual SIS file

Does anyone know how I can uninstall an application programmatically, i.e. without using the phone or PC UI? I understand that the .sis file created on system\install holds info on the files to be removed at uninstall, but is there a command that is run with this .sis file as a parameter which will remove the application related to the .sis file?

I need to be able to remove applications for Nokia 6680 remotely using a third party software without user intervention.

Thanks a lot ...

  #2  
Old 20-09-2005, 06:42 AM
Arjen's Avatar
Arjen Arjen is offline
Administrator
 
Join Date: Apr 2004
Location: Netherlands
Posts: 428
Arjen is on a distinguished road
The only official way is to run the installer with the SIS file name and the uninstall command, but this requires user-interaction (user has to confirm that he/she wants to uninstall the package).

Another option is to parse the residual SIS file yourself and delete the files that have been installed, but since the SIS file format is not documented, this is troublesome.

These residual SIS files essentially only contain the names of the source and destination files from the installation. I've found that on a 9500, the offset to the table of installed files always starts at file offset 76H (32 bit integer). Every table entry consists of 6 32 bit entries. I haven't been able to figure out what all the entries mean (probably installation flags), but the first entry is the start of the source filename, and the third entry is the start of the target file name.

To get the filenames that are installed you could walk the table, by reading every third entry and read everything up to the next first entry. This is the file that is installed. Unfortunately, I haven't been able to figure out how to determine the number of files, but since all file names are stored towards the end of the SIS file, if you get an offset which lies outside the file size or which is smaller than the previous one, you've probably reached the end.

An example from the table in Bounce.sis from my 9500 (starting at offset 76H):
Code:
81 0A 00 00  <-- start of first source filename (0A81)
54 00 00 00
C5 0A 00 00  <-- start of first target filename (0AC5)
FE 2D 00 00 
73 1D 00 00
68 32 00 00
19 0B 00 00  <-- start of second entry source filename (0B19)
56 00 00 00
5F 0B 00 00  <-- start of second entry target filename (0B5F)
8C 1D 00 00
62 4B 00 00
D4 1F 00 00
B5 0B 00 00  <-- start of third entry source filename
etc
So, to read the first installed file, seek to file position 0AC5 and then read all bytes up to (but not including) 0B19. A filenames are stored as unicode strings.

Hope this helps.
__________________
This space intentionally left blank.

Last edited by Arjen; 20-09-2005 at 06:46 AM.

  #3  
Old 20-09-2005, 09:43 AM
skauting skauting is offline
Registered User
 
Join Date: Sep 2005
Posts: 5
skauting is on a distinguished road
Thumbs up Problem solved

Thanks, I have already found this way... I have created the full SIS parser and now I am able to install and unistall a "standard" SIS file without interaction with the user.

The really great SIS file description could be found here: http://homepage.ntlworld.com/thouky/...psifs/sis.html
Ads

  #4  
Old 20-09-2005, 12:23 PM
Arjen's Avatar
Arjen Arjen is offline
Administrator
 
Join Date: Apr 2004
Location: Netherlands
Posts: 428
Arjen is on a distinguished road
Good to hear you solved your problem. And, thanks for the link to the SIS file format!
__________________
This space intentionally left blank.

  #5  
Old 06-06-2006, 05:57 PM
raiday raiday is offline
Registered User
 
Join Date: Jun 2006
Location: Italy, Rome
Posts: 5
raiday is on a distinguished road
Wink

Greath Job!. Really i want to ask you a pleasure, that is to advertise here on this forum a link with the source code you create.

Also I have to create a code that allow me to "install and unistall a nstandard SIS file without interaction with the user" with my Nokia 6680. Can anyoneelse help me?
 

Bookmarks

Tags
app, file, residual, sis, uninstall

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
How to make Z: drive visible in the default File manager Raven Nokia 9300 and 9500 7 25-07-2007 07:16 AM
SiS file faquick Nokia 7650 1 07-10-2002 12:45 PM



All times are GMT. The time now is 12:44 AM.


vBulletin skins developed by: eXtremepixels
Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright Notes || Contact Us || Privacy Policy