SIS Info tool for Symbian 9.1 SIS files
Download posted August 24th, 2006 by jari
in
Platforms:
There are plenty of utilities to extract the contents of a SIS file from the pre Symbian 9.1 SIS files. However, I could not find that kind of tool for the new SISX file format (specified in here). So, I wrote a small python utility that is able to parse the SIS file, print some information about its contents and extract the contained files.
Latest version can be found in here.
Or get a version mirrored on our server:
![]()
sisinfo.zip
Usage
sisinfo.py [options]
| -f FILENAME | --file=FILENAME | Name of the SIS file to inspect |
| -i | --info | Print information about SIS contents |
| -s | --structure | Print SIS file structure |
| -e PATH | --extract=PATH | Extract the files from the SIS file to PATH |
At least -f switch has to be given on command line to define the SIS file to inspect and one or more of the other options to specify the actions to perform.






SIS Info tool for Symbian 9.1 SIS files
Hello Jari,
A quick suggestion for a small improvement that would make the scripts significantly more useful:
Add a feature where a PKG file is generated from the SISX file - this would make the scripts immensly more useful in verification testing and prototyping.
Thanks in advance, Pawel
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
Hi Pawel, thanks for the improvement idea. I will implement support for generating the pkg-file as soon as I have time for it.
Meanwhile, check the version 0.2 of the tool http://www.niksula.cs.hut.fi/~jpsukane/sisinfo.html. The new version has support for printing certificate information of the sis file.
(I could not find a way to update the article, is I posted update information like this...)
Jari
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
The -i option works fine, but -e option gives error below? Why? Have tried with a couple different SISX files each of which give same error. Thanks.
C:\development\workspace\UrlLauncher\sis>python sisinfo.py -f UrlLauncher.SISX -i ! : \ s y s \ b i n \ U r l L a u n c h e r . e x e ! : \ r e s o u r c e \ a p p s \ U r l L a u n c h e r . r s c ! : \ p r i v a t e \ 1 0 0 0 3 a 3 f \ i m p o r t \ a p p s \ U r l L a u n c h e r _ r e g . r s c ! : \ r e s o u r c e \ a p p s \ U r l L a u n c h e r . m i f ! : \ p r i v a t e \ 0 7 5 7 5 4 0 2 \ b a c k u p _ r e g i s t r a t i o n . x m l
C:\development\workspace\UrlLauncher\sis>python sisinfo.py -f UrlLauncher.SISX -i -e C:\development\workspace\UrlLaunche r\sis\unsis ! : \ s y s \ b i n \ U r l L a u n c h e r . e x e Traceback (most recent call last): File "sisinfo.py", line 201, in <module> handler.execute(options) File "sisinfo.py", line 130, in execute newFile = file(path + os.sep + parts[len(parts) - 1], "wb") TypeError: file() argument 1 must be (encoded string without NULL bytes), not str
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
V0.5 works much better, thanks very much. I tested on 3-4 sis files. -e option worked fine on all except one. The one it failed on gave error below:
Traceback (most recent call last): File "C:\Program Files\sisinfo\sisinfo.py", line 201, in <module> handler.execute(options) File "C:\Program Files\sisinfo\sisinfo.py", line 130, in execute newFile = file(path + os.sep + parts[len(parts) - 1], "wb") IOError: [Errno 2] No such file or directory: u'C:\\Temp\\sisinfo_test\\out\\*.*'
SIS Info tool for Symbian 9.1 SIS files
I am having trouble installing this tool.
I am brand spanking new to python and don't know why I am getting file not found errors and permission denied errors.
This is what I have tried:
placing the folder "sisinfo" in the python directory and in the lib directory. I also extracted the sysinfo.py and setup.py files and put them in both the python directory and in the lib directory. Just to keep things simple I went ahead and placed the object file "file.sisx" into the python directory so that I could call python without changing directories or altering my Windows "PATH" variable.
Any help would be greatly appreciated.
Thanks
SIS Info tool for Symbian 9.1 SIS files
SIS Info tool for Symbian 9.1 SIS files
Hi,
I have just added a piece of lines to the code and it solved the IOError problem.
from line 130-137 in sisinfo.py:
os.makedirs(path)<BR> try:<BR> newFile = file(path + os.sep + parts[len(parts) - 1], "wb")<BR> newFile.write(self.fileDatas[f.fileIndex].findField(sisfields.CompressedField)[0].data)<BR> newFile.close()<BR> except IOError, (errno, strerror):<BR> print "I/O error(%s): %s" % (errno, strerror)<BR> for s in self.signatureCertificateChains :<BR>
Take care with the idents (TABS)!
Hope this helps
Re: SIS Info tool for Symbian 9.1 SIS files
very useful , work perfect thanks
Re: SIS Info tool for Symbian 9.1 SIS files
some more tools for SiS extraction
http://www.symbian-toys.com/sisxplorer.aspx