[SYMBIAN] SmartSIS - Parte 1: extracción y empaquetamiento de archivos SIS
Publicado: Mié May 13, 2009 2:18 pm
Bueno, después de un tiempo pude terminar esta guía, que creo que va a ser la primera sobre esto, ya que no la he visto en ningún lado. A continuación les voy a explicar todo sobre el SmartSIS, una belleza creada por Smart4n escrita en Python que hace lo más increíble que haya visto: la posibilidad de extraer los archivos internos de un archivo SIS, para manipularlos a nuestro gusto y piacere, y todo desde el celular. Vamos a ir por pasos, ya que esta aplicación tiene muchos otros usos, pero mejor comencemos desde el principio, haciendo una introducción:
A continuación, les va a aparecer una pantalla con toda la información de la app: Nombre, versión, UID, fecha y hora de creación, autor y el vendedor de la app. Abajo de eso, les va a aparecer los detalles de los archivos que componen el sis, entonces con todo les quedaría una cosa así:
Bien... Vamos bien hasta ahí? Bueno, ahora vamos a recurrir al programa que extrajimos, al X-plore, así que lo abrimos y van a ir a la carpeta SmartSIS.
Les comento, haciendo un paréntesis, que dentro del programa, en Misc--> Settings, tienen lar opciones de tal, y en donde dice Choose Path les da a elegir donde quieren guardar todos los archivos con los que trabajen de ahora en mas con el programa, o sea en C o en E.
Hecha la aclaración, seguimos. Van a ir a la ruta E:\SmartSIS\unpacked\symbian9 (puede ser E, como en mi caso, o C, pero todo lo demás es igual). Allí se van a encontrar con una carpeta con el nombre del archivo extraído y dentro de ella va a estar todo el contenido del mismo ordenado por carpetas. Se los detallo a continuación:
En la carpeta \sys\bin tienen el archivo ejecutable de la aplicación. Al lado de el (como ejemplo, no les va a aparecer eso cuando estén viendo las carpetas) dicen todas las capacidades o permisos que tiene este archivo .exe. En este caso, tienen los permisos de conexión de red, leer y escribir datos de usuario.
En las carpetas de \private tenemos, por un lado, archivos que tienen que ver con distintas funciones de la aplicación. Por el otro lado, en \private\10003a3f\import\apps tenemos el archivo _reg.rsc, que es el archivo de registro del contenido de la aplicación.
Finalmente, tenemos en \resource\apps\ los archivos MIF y RSC de la aplicación: los MIF son los archivos que contienen todos los iconos e imagenes del programa. Los RSC son los archivos que determinan el idioma del contenido de la aplicación. Cuando una aplicación trae varios idiomas suele pasar que figuran con la extensión r.**. Los asteriscos hacen de número, los cuales varían dependiendo del idioma, como por ejemplo, r01 para el inglés, r04 para el español, etc.
Cuando se familiaricen con el programa y les vayan agarrando la mano a extraer archivos, van a poder modificarlos borrando de las carpetas donde los extrajeron archivos r.** ,por ejemplo, para que al empaquetarlo no pesen tanto y cosas así. JAMÁS se les ocurra borrar los archivos exe, reg.rsc, mif y rsc en cualquier aplicación, ya que esos son los elementales para que tal funcione. Cualquier cosa, sino quieren hacer macana, siempre hagan una copia de esa carpeta o bien vuelvan a extraer el sis. El resto, lo dejo para que ustedes lo descubran!
El SmartSIS provee 2 métodos de empaquetamiento: el manual y el que se realiza por PKG. Ambos se pueden seleccionar desde Misc.--> Packing Mode. Explico los 2.
El método manual es el mas sencillo para los que le quieren agarrar la mano. Uno tiene que ir poniendo paso por paso cada cosa. Enumero cada uno de ellos:
1- Selección de ruta donde está la carpeta a empaquetar. En este caso, siguiendo con el ejemplo del X-plore, seleccionan CUSTOM y les va a aparecer para seleccionar dicha carpeta, o la buscan en su caso, así que cuando encuentren la carpeta del archivo extraído entran en ella y sobre la carpeta ! le dan a la primera opción. Hecho esto,le dan a CONTINUE (asi con cada paso).
2- Nombre de la aplicación. Seleccionan CUSTOM y le ponen el nombre que deseen.
3- Versión de la aplicación. Seleccionan CUSTOM y la renombran como quieran (x.x.x).
4- Número UID. Es el código de la aplicación, el cual se escribe en valor hexagesimal y es único para cada app. Cuando lo escriban recuerden siempre que adelante debe llevar 0x y el resto sd debe componer de 8 caracteres con números del 0 al 9 y de letras de la A a la F. Pueden también buscar la UID del programa con el Jbak Taskman o con el Active File y transcribirla.
5- Autor. Seleccionan CUSTOM y le ponen lo que quieran.
6- Texto. Esto es interesante: permite poner un texto para que aparezca durante la instalación. Lo pueden hacer con el X-plore o el programa que quieran. No debe contener caracteres como acentos porque sino no se van a ver. Lo hacen y luego seleccionan CUSTOM y lo buscan para entonces ponerlo.
7- Tipo de instalación. Esto lo dejan en SA (standart application), lo dejan como está.
8- Código de lenguaje. Esto no afecta mucho tampoco. Si lo ven, dice ZH, que representa al idioma chino, pero no va a hacer que cambien nada en lo absoluto en la app.
Finalmente, les va a salir un cartel que dice esto:
Entonces le van a dar a PACKING y seleccionen STANDART APPLICATION y va a comenzar el proceso.
El modo vía PKG lo que hace es ahorrar todo eso de ir paso por paso, aunque también permite modificar en caso de que un dato sea erróneo. Lo considero más rápido y fácil que el modo manual.
En la ruta E:\smartSIS\PKGs se van a encontrar con los archivos PKG del programa. Estos se crean automáticamente al ser extraídos los archivos sis y guardan toda la información del programa extraído (si lo abren se van a dar cuenta). Entonces:
Con el modo vía PKG seleccionado, pulsan PACKING y les va a aparecer esto:
Bien, ahora en Opciones tiene la opción MODIFY, y entrando en ella pueden editar, de una forma mas rápida, todos los datos de la aplicación ya mencionados en el modo manual. Como agregado, tiene la opción CHANGE DISK, que les va a permitir cambiar el disco donde va a ser instalada el nuevo sis (!, C, E). En el caso de que cuando abran el programa para empaquetar no les aparezca el PKG que desean, pueden seleccionar el que quieran desde la opción OPTIONS.
Finalmente y ya terminando, seleccionan PACKING--> STANDART PACKING, y va a comenzar el proceso. El nuevo archivo SIS lo van a encontrar en la carpeta \smartSIS\packed\symbian9, listo para usar.
En la segunda guía de SmartSIS, les enseño cómo extraer y empaquetar los archivos MIF y SVG con la utilidad para dicho propósito que posee este programa. La pueden ver ACÁ.
Espero que les haya sido útil. Cualquier consulta o duda pregunten. Salu2! ;D
El SmartSIS es, como ya dije, una aplicación escrita en Python que permite empaquetar y desempaquetar archivos SIS y SISX tanto de s60v3 como s60v2 (solo SymbianOS v8.1). Cuenta también con un convertidor de rutinas en Python (formato .py) a formato SIS, tanto para s60v3 como para v1 y v2, un empaquetador y desempaquetador de archivos MIF con convertidor de imágenes a SVG y la posibilidad de firmar los archivos convertidos.
DESCARGAR SMARTSIS v2.2.5
(dejo esta versión porque es la que más estable encuentro con respecto a las demás. Sí lo quieren, subo las otras también).
Mas o menos explicado el contenido de este pequeño gran programa, les paso a la explicación de como comenzar a usarlo.DESCARGAR SMARTSIS v2.2.5
(dejo esta versión porque es la que más estable encuentro con respecto a las demás. Sí lo quieren, subo las otras también).
¿CÓMO DESEMPAQUETAR UN ARCHIVO SIS?
Vamos a empezar por acá. Esto lo pueden hacer con cualquier archivo sis o sisx, sea un juego, un programa, un tema, un tema de audio o una app Python. Así que vamos a seleccionar UNPACK, a lo que les va pedir que seleccionen el archivo a extraer. En este caso vamos a utilizar como ejemplo una app que seguro todos tienen, que es el X-plore v1.30, así que seleccionamos el archivo sis del X-plore y le damos a la primera opción que está en ruso.A continuación, les va a aparecer una pantalla con toda la información de la app: Nombre, versión, UID, fecha y hora de creación, autor y el vendedor de la app. Abajo de eso, les va a aparecer los detalles de los archivos que componen el sis, entonces con todo les quedaría una cosa así:
Si le dan a Opciones, van a ver que tiene una opción que dice CERTIFICATE, que es precisamente, si la app está firmada, para ver el certificado de la misma. Como esta lo está, acá les pongo lo que les saldría:Symbian 9
=*=*=*=*=*=*=*=*=*=*=*=*
-=Details Information=-
Name : X-plore
Version : 1, 30, 0
UID : 0xa0000bcd
Date : 7.11.2008
Time : 11:25
Author : Lonely Cat Games
Vendor : Lonely Cat Games
=*=*=*=*=*=*=*=*=*=*=*=*
-=Sis Details=-:
!:\sys\bin\X-plore.exe [NetworkServices LocalServices ReadUserData WriteUserData]
!:\private\a0000bcd\app.bin
!:\resource\apps\X-plore.rsc
!:\private\10003a3f\import\apps\X-plore_reg.rsc
!:\resource\apps\X-plore.mif
!:\private\a0000bcd\Explorer\Data.dta
!:\private\a0000bcd\Explorer\shop.txt
!:\private\a0000bcd\Explorer\cnt.p
=*=*=*=*=*=*=*=*=*=*=*=*
Bien, ahora lo que queda es a UNPACK y luego a STANDART UNPACK. Las otras opciones obvienlas. Entonces va a ser cuando empiece el proceso de extracción de los archivos del sis. Sean pacientes si llega a tardar, ya que algunos archivos, como los mif y los exe son los que mas tardan en ser procesados. Una vez que se complete el 100% de la extracción, les va a aparecer un cartel como el del ejemplo, donde dice donde se guardaron los archivos extraídos y el tiempo del proceso:-=Certificate Info=-
Executed 1:
Signature
'Lonely Cat'
'SK'
'Lonely Cat Games'
Distributors
'Lonely Cat'
'SK'
'Lonely Cat Games'
Save Path : E:\smartSIS\unpacked\symbian9\X_plore_OS_91_92_130
Time Process : 00:00:18
Bien... Vamos bien hasta ahí? Bueno, ahora vamos a recurrir al programa que extrajimos, al X-plore, así que lo abrimos y van a ir a la carpeta SmartSIS.
Les comento, haciendo un paréntesis, que dentro del programa, en Misc--> Settings, tienen lar opciones de tal, y en donde dice Choose Path les da a elegir donde quieren guardar todos los archivos con los que trabajen de ahora en mas con el programa, o sea en C o en E.
Hecha la aclaración, seguimos. Van a ir a la ruta E:\SmartSIS\unpacked\symbian9 (puede ser E, como en mi caso, o C, pero todo lo demás es igual). Allí se van a encontrar con una carpeta con el nombre del archivo extraído y dentro de ella va a estar todo el contenido del mismo ordenado por carpetas. Se los detallo a continuación:
En primer lugar, la carpeta ! indica que la aplicación puede ser instalada tanto en C como en E. Si tuviera un lugar de instalación especifico se indicaria con C o E, lo que haría que en la instalación de la misma no preguntara en cual disco uno quiere guardarla.!:\sys\bin\X-plore.exe [NetworkServices LocalServices ReadUserData WriteUserData]
!:\private\a0000bcd\app.bin
!:\private\a0000bcd\Explorer\Data.dta
!:\private\a0000bcd\Explorer\shop.txt
!:\private\a0000bcd\Explorer\cnt.p
!:\private\10003a3f\import\apps\X-plore_reg.rsc
!:\resource\apps\X-plore.mif
!:\resource\apps\X-plore.rsc
En la carpeta \sys\bin tienen el archivo ejecutable de la aplicación. Al lado de el (como ejemplo, no les va a aparecer eso cuando estén viendo las carpetas) dicen todas las capacidades o permisos que tiene este archivo .exe. En este caso, tienen los permisos de conexión de red, leer y escribir datos de usuario.
En las carpetas de \private tenemos, por un lado, archivos que tienen que ver con distintas funciones de la aplicación. Por el otro lado, en \private\10003a3f\import\apps tenemos el archivo _reg.rsc, que es el archivo de registro del contenido de la aplicación.
Finalmente, tenemos en \resource\apps\ los archivos MIF y RSC de la aplicación: los MIF son los archivos que contienen todos los iconos e imagenes del programa. Los RSC son los archivos que determinan el idioma del contenido de la aplicación. Cuando una aplicación trae varios idiomas suele pasar que figuran con la extensión r.**. Los asteriscos hacen de número, los cuales varían dependiendo del idioma, como por ejemplo, r01 para el inglés, r04 para el español, etc.
Cuando se familiaricen con el programa y les vayan agarrando la mano a extraer archivos, van a poder modificarlos borrando de las carpetas donde los extrajeron archivos r.** ,por ejemplo, para que al empaquetarlo no pesen tanto y cosas así. JAMÁS se les ocurra borrar los archivos exe, reg.rsc, mif y rsc en cualquier aplicación, ya que esos son los elementales para que tal funcione. Cualquier cosa, sino quieren hacer macana, siempre hagan una copia de esa carpeta o bien vuelvan a extraer el sis. El resto, lo dejo para que ustedes lo descubran!
¿COMO EMPAQUETAR UN NUEVO ARCHIVO SIS?
Ahora que saben como desempaquetar un archivo sis, esto les va a resultar mas fácil si ya se empezaron a manejar con el programa. El SmartSIS provee 2 métodos de empaquetamiento: el manual y el que se realiza por PKG. Ambos se pueden seleccionar desde Misc.--> Packing Mode. Explico los 2.
El método manual es el mas sencillo para los que le quieren agarrar la mano. Uno tiene que ir poniendo paso por paso cada cosa. Enumero cada uno de ellos:
1- Selección de ruta donde está la carpeta a empaquetar. En este caso, siguiendo con el ejemplo del X-plore, seleccionan CUSTOM y les va a aparecer para seleccionar dicha carpeta, o la buscan en su caso, así que cuando encuentren la carpeta del archivo extraído entran en ella y sobre la carpeta ! le dan a la primera opción. Hecho esto,le dan a CONTINUE (asi con cada paso).
2- Nombre de la aplicación. Seleccionan CUSTOM y le ponen el nombre que deseen.
3- Versión de la aplicación. Seleccionan CUSTOM y la renombran como quieran (x.x.x).
4- Número UID. Es el código de la aplicación, el cual se escribe en valor hexagesimal y es único para cada app. Cuando lo escriban recuerden siempre que adelante debe llevar 0x y el resto sd debe componer de 8 caracteres con números del 0 al 9 y de letras de la A a la F. Pueden también buscar la UID del programa con el Jbak Taskman o con el Active File y transcribirla.
5- Autor. Seleccionan CUSTOM y le ponen lo que quieran.
6- Texto. Esto es interesante: permite poner un texto para que aparezca durante la instalación. Lo pueden hacer con el X-plore o el programa que quieran. No debe contener caracteres como acentos porque sino no se van a ver. Lo hacen y luego seleccionan CUSTOM y lo buscan para entonces ponerlo.
7- Tipo de instalación. Esto lo dejan en SA (standart application), lo dejan como está.
8- Código de lenguaje. Esto no afecta mucho tampoco. Si lo ven, dice ZH, que representa al idioma chino, pero no va a hacer que cambien nada en lo absoluto en la app.
Finalmente, les va a salir un cartel que dice esto:
Steps to complete, check the package content, modify, please return
Processing Path : E:\smartSIS\unpacked\symbian9\X_plore_OS_91_92_130\
Package Content : !:\private\10003a3f\import\apps\X-plore_reg.rsc
!:\private\a0000bcd\app.bin
!:\private\a0000bcd\Explorer\cnt.p
!:\private\a0000bcd\Explorer\Data.dta
!:\private\a0000bcd\Explorer\shop.txt
!:\resource\apps\X-plore.mif
!:\resource\apps\X-plore.rsc
!:\sys\bin\X-plore.exe
Name : *********
Version : x.x.x
UID : 0x*******
Author : *********
Installation Type : SA
Popup Text : ********* [Support Chinese]
Language : ZH
Entonces le van a dar a PACKING y seleccionen STANDART APPLICATION y va a comenzar el proceso.
El modo vía PKG lo que hace es ahorrar todo eso de ir paso por paso, aunque también permite modificar en caso de que un dato sea erróneo. Lo considero más rápido y fácil que el modo manual.
En la ruta E:\smartSIS\PKGs se van a encontrar con los archivos PKG del programa. Estos se crean automáticamente al ser extraídos los archivos sis y guardan toda la información del programa extraído (si lo abren se van a dar cuenta). Entonces:
Con el modo vía PKG seleccionado, pulsan PACKING y les va a aparecer esto:
Pkg Path : E:\smartSIS\PKGs\X_plore_OS_91_92_130.pkg
Processing Path : E:\smartSIS\unpacked\symbian9\X_plore_OS_91_92_130
Package Content : !:\private\10003a3f\import\apps\X-plore_reg.rsc
!:\private\a0000bcd\app.bin
!:\private\a0000bcd\Explorer\cnt.p
!:\private\a0000bcd\Explorer\Data.dta
!:\private\a0000bcd\Explorer\shop.txt
!:\resource\apps\X-plore.mif
!:\resource\apps\X-plore.rsc
!:\sys\bin\X-plore.exe
Name : X-plore
Version : 1, 30, 0
UID : 0xa0000bcd
Author : Lonely Cat Games
Installation Type : SA
Popup Text : ********* [Support Chinese]
Language : ZH
Bien, ahora en Opciones tiene la opción MODIFY, y entrando en ella pueden editar, de una forma mas rápida, todos los datos de la aplicación ya mencionados en el modo manual. Como agregado, tiene la opción CHANGE DISK, que les va a permitir cambiar el disco donde va a ser instalada el nuevo sis (!, C, E). En el caso de que cuando abran el programa para empaquetar no les aparezca el PKG que desean, pueden seleccionar el que quieran desde la opción OPTIONS.
Finalmente y ya terminando, seleccionan PACKING--> STANDART PACKING, y va a comenzar el proceso. El nuevo archivo SIS lo van a encontrar en la carpeta \smartSIS\packed\symbian9, listo para usar.
En la segunda guía de SmartSIS, les enseño cómo extraer y empaquetar los archivos MIF y SVG con la utilidad para dicho propósito que posee este programa. La pueden ver ACÁ.
Espero que les haya sido útil. Cualquier consulta o duda pregunten. Salu2! ;D