Cesar Crespo
Tutorial desarrollado por:
Cesar Crespo Martín 2003-2007

Ver todos los tutoriales del autor

Fecha de publicación del tutorial: 2004-02-15

Tutorial visitado 53.678 veces Descargar en PDF
Realizar Instaladores de forma fácil con NSIS

Realizar Instaladores de forma sencilla con NSIS 2.0 (Nullsoft Scriptable Install System 2.0)

    Actualmente, todos los paquetes software que usamos vienen con un instalador.  El instalador es el encargado de copiar/actualizar ficheros, escribir claves en el registro, generar una configuración personalizada, crear accesos directos etc...  Todo esto se hace de manera automática para el usuario.  Ante el usuario el instalador se le muestra como un wizard durante el cual va seleccionando las opciones apropiadas y espera hasta que el instalador termina.  Una vez que el instalador ha terminado el usuario puede ejecutar nuestra aplicación.

NSIS  es una herramienta Open Source que permite a los desarrolladores crear dichos instaladores.  NSIS mediante un sencillo lenguaje de script nos permite realizar simples instaladores que muestran al usuario una sucesión de pantallas con diferentes opciones así como  otras tareas como generar claves en el registro o generar accesos directos a nuestra aplicación.

NSIS compila estos scripts dentro de un fichero ejecutable, de forma que nuestra aplicación pueda ser distribuida fácilmente. NSIS únicamente añade 34Kb de código de instalador (en la configuración por defecto).  Esto unido a que los ficheros de la aplicación son comprimidos según el algoritmo que indique el script o bien el compilador, hace posible que podamos crear instaladores de reducido tamaño.

Y lo mejor de todo es que NSIS 2.0  es una herramienta gratuita.

Instalación

El Nullsoft Scriptable Install System se encuentra como proyecto en http://sourceforge.net/projects/nsis

 

Desde cualquiera de sus mirrors podemos descargar la nueva versión 2.0.

Una vez instalado tendremos el compilador dispuesto para generar instaladores a partir de nuestros ficheros de script .nsi.

 

Ficheros de Script de NSIS

Para crear un instalador primero debemos escribir un script NSIS. Un script NSIS no es más que un fichero de texto plano con una sintaxis especial.  Para trabajar con estos scipts un buen editor es gVim, la versión para win32/X-window del clásico vi. Como podemos observar reconoce la sintaxis de los ficheros .nsi y nos la muestra con diferentes colores,  lo cual es sin duda de gran ayuda:

Los scripts NSIS son scripts de tipo batch (por lotes) en los que cada línea es tratada como un comando.  Si nuestra línea es demasiado larga podemos usar el bach-slash ' \ ' al final de la línea para continuar.  El compilador tratará la siguiente línea como continuación de la anterior, como por ejemplo:

MessageBox MB_YESNO|MB_ICONQUESTION \
    "¿Quiere borrar todos los ficheros de este directorio? \
    (Si creó algo que quiera mantener, click No
    IDNO NoRemoveLabel
 

Lenguaje de Script

La extensión por defecto de los scripts es .nsi.  También existen ficheros header ( al estilo de los .h de C/C++) que tienen la extensión .nsh.

Un script NSIS puede contener atributos del instalador, páginas, secciones y funciones.

Atributos del Instalador:


    Los atributos del instalador determinan el comportamiento y el look and fell de nuestro instalador.  Con estos atributos podemos cambiar los mensajes que se mostrarán durante la instalación.

Por ejemplo Name es el atributo correspondiente al nombre de nuestra aplicación, InstallDir será el directorio elegido para instalar la aplicación etc.

Páginas:

Un instalador puede mostrar diferentes páginas al usuario, como por ejemplo la página bienvenida, la de aceptación de licencia , la de selección del directorio de instalación etc..:

Page license
Page components
Page directory
Page instfiles
UninstPage uninstConfirm
UninstPage instfiles
En caso de usar el UI moderno al incluir:  !include "MUI.nsh" usaremos sus macros:

 ;Mostramos la página de bienvenida
!insertmacro MUI_PAGE_WELCOME
;Página donde mostramos el contrato de licencia
!insertmacro MUI_PAGE_LICENSE "licencia.txt"
;página donde se muestran las distintas secciones definidas
!insertmacro MUI_PAGE_COMPONENTS
;página donde se selecciona el directorio donde instalar nuestra aplicacion
!insertmacro MUI_PAGE_DIRECTORY
;página de instalación de ficheros
!insertmacro MUI_PAGE_INSTFILES
;página final
!insertmacro MUI_PAGE_FINISH
 

Secciones:

    En un instalador pueden hacerse categorías de instalación.  Y así separar la instalación en varios componentes, dando a elegir al usuario cuales instalar y cuales no.

Section "My Program"
  SetOutPath $INSTDIR
  File "My Program.exe"
  File "Readme.txt"
SectionEnd

Dentro de cada sección usamos instrucciones que son ejecutadas en tiempo de ejecución.  Estas instrucciones, leen y escriben en el registro, crean, borran y copian ficheros y directorios, crean accesos directos etc.

Los desinstaladotes también pueden tener varias secciones teniendo como prefijo "un.":

Section "Installer Section"
SectionEnd

Section "un.Uninstaller Section"
SectionEnd

Funciones

Las Funciones contienen código semejante a las secciones , pero se diferencian de éstas en el modo en que se llaman. Hay dos tipos de funciones, las definidas por el usuario, que se llaman con la instrucción Call y las que se activan cuando ocurren determinados eventos en la instalación:

Function .onInit
  MessageBox MB_YESNO "Esto instalará mi programa ¿Quiere continuar?" IDYES gogogo
    Abort
  gogogo:
FunctionEnd
Abort es una función especial que hace que el instalador termine inmediatamente.

 

Variables:

En este lenguaje se declaran las variables mediante Var :

Var BLA ;Declaramos la variable
Section bla

  StrCpy $BLA "123" ;Ahora la variable BLA vale "123"
SectionEnd

Estos son a grandes rasgos los componentes del lenguaje de script de NSIS, con el paquete se incluye un completo sistema de ayuda acerca del lenguaje, así como diferentes ejemplos:

Ejemplos proporcionados

Estas son las distintas apariencias posibles que puede tener nuestro instalador según los valores del script:

Este es el antiguo estilo de los instaladores.  Actualmente existe otro tipo de instaladores que visualmente se presentan así:

 

 

Estos dos últimos son aquellos scripts que usan las macros definidas en :

;Include Modern UI
!include "MUI.nsh"
 

Nuestro Ejemplo de Instalador

Basándonos en las especificaciones del lenguaje de script y en algunos ejemplos hemos construido nuestro propio instalador personalizado.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Ejemplo de instalador NSIS
; César Crespo Martín 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Para usar el estilo moderno de instalador incluimos el siguiente header:
;--------------------------------
;Include Modern UI

  !include "MUI.nsh"
En este header se definen distintas macros que usaremos más adelante.

Dentro de nuestro script podemos especificar el algoritmo de compresión que queremos utilizar, este valor puede ser cambiado desde el compilador.

;Seleccionamos el algoritmo de compresión utilizado para comprimir nuestra aplicación
SetCompressor lzma

;--------------------------------
;Con esta opción alertamos al usuario cuando pulsa el botón cancelar y le pedimos confirmación para abortar
;la instalación
;Esta macro debe colocarse en esta posición del script sino no funcionara
  !define mui_abortwarning

;Definimos el valor de la variable VERSION, en caso de no definirse en el script
;podria ser definida en el compilador
!define VERSION "1.0"

A continuación mostramos las distintas páginas de que constará nuestro instalador, al estar usando el nuevo estilo de instalador usamos unas macros especiales:
;--------------------------------
;Pages

  ;Mostramos la página de bienvenida 
  !insertmacro MUI_PAGE_WELCOME 
  ;Página donde mostramos el contrato de licencia 
  !insertmacro MUI_PAGE_LICENSE "licencia.txt" 
  ;página donde se muestran las distintas secciones definidas 
  !insertmacro MUI_PAGE_COMPONENTS 
  ;página donde se selecciona el directorio donde instalar nuestra aplicacion 
  !insertmacro MUI_PAGE_DIRECTORY 
  ;página de instalación de ficheros 
  !insertmacro MUI_PAGE_INSTFILES 
  ;página final
  !insertmacro MUI_PAGE_FINISH

;páginas referentes al desinstalador
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH

La siguiente macro define el idioma de los mensajes por defecto que se mostrara al usuario:
;--------------------------------
;Languages

!insertmacro MUI_LANGUAGE "Spanish"

; Para generar instaladores en diferentes idiomas podemos escribir lo siguiente:
;  !insertmacro MUI_LANGUAGE ${LANGUAGE}
; De esta forma pasando la variable LANGUAGE al compilador podremos generar
;paquetes en distintos idiomas sin cambiar el script

;;;;;;;;;;;;;;;;;;;;;;;;;
; Configuración General ;
;;;;;;;;;;;;;;;;;;;;;;;;;
;Nuestro instalador se llamara si la versión fuera la 1.0: Ejemplo-1.0-win32.exe
OutFile Ejemplo-${VERSION}-win32.exe

;Aquí comprobamos que en la versión Inglesa se muestra correctamente el mensaje:
;Welcome to the $Name Setup Wizard
;Al tener reservado un espacio fijo para este mensaje, y al ser
;la frase en español mas larga:
; Bienvenido al Asistente de Instalación de Aplicación $Name
; no se ve el contenido de la variable $Name si el tamaño es muy grande
Name "Adictos"
Caption "Adictos ${VERSION} para Win32 Setup"
;Icon icono.ico

;Comprobacion de integridad del fichero activada
CRCCheck on
;Estilos visuales del XP activados
XPStyle on

/*
        Declaracion de variables a usar

*/
# también comprobamos los distintos
; tipos de comentarios que nos permite este lenguaje de script

Var PATH
Var PATH_ACCESO_DIRECTO
;Indicamos cual será el directorio por defecto donde instalaremos nuestra
;aplicación, el usuario puede cambiar este valor en tiempo de ejecución.
InstallDir "$PROGRAMFILES\MiAplicacion"

; check if the program has already been installed, if so, take this dir
; as install dir
InstallDirRegKey HKLM SOFTWARE\ADICTOS "Install_Dir"
;Mensaje que mostraremos para indicarle al usuario que seleccione un directorio
DirText "Elija un directorio donde instalar la aplicación:"
;Indicamos que cuando la instalación se complete no se cierre el instalador automáticamente
AutoCloseWindow false
;Mostramos todos los detalles del la instalación al usuario.
ShowInstDetails show
;En caso de encontrarse los ficheros se sobreescriben
SetOverwrite on
;Optimizamos nuestro paquete en tiempo de compilación, es altamente recomendable habilitar siempre esta opción
SetDatablockOptimize on
;Habilitamos la compresión de nuestro instalador
SetCompress auto
;Personalizamos el mensaje de desinstalación
UninstallText "Este es el desinstalador del Ejemplo."


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Install settings                                                    ;
; En esta sección añadimos los ficheros que forman nuestra aplicación ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Section "Programa"
StrCpy $PATH "ADICTOS"
StrCpy $PATH_ACCESO_DIRECTO "_ADICTOS_"
SetOutPath $INSTDIR\$PATH

;Incluimos todos los ficheros que componen nuestra aplicación
File   ejemplo.exe
File   licencia.html
File   config.ini
File   *.txt

;Hacemos que la instalación se realice para todos los usuarios del sistema
SetShellVarContext all
;Creamos los directorios, acesos directos y claves del registro que queramos...
	CreateDirectory "$SMPROGRAMS\$PATH_ACCESO_DIRECTO"
        CreateShortCut "$SMPROGRAMS\$PATH_ACCESO_DIRECTO\Ejemplo.lnk" \
                       "$INSTDIR\ejemplo.exe" "--parametros parametro1"
        CreateShortCut "$SMPROGRAMS\$PATH_ACCESO_DIRECTO\Licencia.lnk" \
                       "$INSTDIR\licencia.html"

;Creamos también el aceso directo al instalador
        CreateShortCut "$SMPROGRAMS\$PATH_ACCESO_DIRECTO\Desinstalar.lnk" \
                       "$INSTDIR\uninstall.exe"

        WriteRegStr HKLM \
            SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$PATH \
            "DisplayName" "Aplicación para Adictos al Trabajo ${VERSION}"
        WriteRegStr HKLM \
            SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$PATH \
            "UninstallString" '"$INSTDIR\uninstall.exe"'
        WriteUninstaller "uninstall.exe"

        WriteRegStr HKLM SOFTWARE\$PATH "InstallDir" $INSTDIR
       
        WriteRegStr HKLM SOFTWARE\$PATH "Version" "${VERSION}"
        ;Mostramos el
directorio donde se crearon los acesos directos
	Exec "explorer $SMPROGRAMS\$PATH_ACCESO_DIRECTO\"
SectionEnd


Section "Ayuda"
        SetOutPath $INSTDIR\$PATH
        StrCpy $PATH "ADICTOS"
        StrCpy $PATH_ACCESO_DIRECTO "_ADICTOS_"
;Estos directorios han de contener algún fichero, sino el compilador
;dara el error: File: "ayuda" -> no files found.
;En caso de querer que nuestra aplicación se creen directorios vacios una opción
;es crear un fichero dummy.txt
        File /r ayuda
SectionEnd

Section "Skins"
        SetOutPath $INSTDIR\$PATH
        StrCpy $PATH "ADICTOS"
        StrCpy $PATH_ACCESO_DIRECTO "_ADICTOS_"
        File  /r skins
SectionEnd

Section "Plugins"
        SetOutPath $INSTDIR\$PATH
        StrCpy $PATH "ADICTOS"
        StrCpy $PATH_ACCESO_DIRECTO "_ADICTOS_"
        File   /r plugins
SectionEnd

;;;;;;;;;;;;;;;;;;;;;;
; Uninstall settings ;
;;;;;;;;;;;;;;;;;;;;;;

Section "Uninstall"
        StrCpy $PATH "ADICTOS"
        StrCpy $PATH_ACCESO_DIRECTO "_ADICTOS_"
        SetShellVarContext all
        RMDir /r $SMPROGRAMS\$PATH_ACCESO_DIRECTO
        RMDir /r $INSTDIR\$PATH
        RMDir /r $INSTDIR
        DeleteRegKey HKLM SOFTWARE\$PATH
        DeleteRegKey HKLM \
            Software\Microsoft\Windows\CurrentVersion\Uninstall\$PATH
SectionEnd

Resultado visual de nuestro Instalador:

Una vez compilado nuestro instalador tenemos nuestro instalador dispuesto para ser distribuido y usado:

Finalmente comprobamos que nuestra aplicación aparece como instalada en Windows:

Y el desinstalador tiene este aspecto:

 

Tanto el instalador como el desinstalador en caso de tener activados los estilos visuales de XP tendrían ese look and feel.

Entorno de compilación

Finalmente para generar el fichero ejecutable del instalador nos bastará con pulsar el botón derecho sobre el script en el explorador de ficheros y seleccionar "Compile NSIS Script" :

O bien desde el propio MakeNSISW:

 

Desde donde en Tools>Settings podemos modificar el valor de variables definidas en el script:

Siempre y cuando no se definan dentro del script, ya que daría un error de doble definición.  Desde aquí también podremos especificar el algoritmo utilizado para la compresión de la aplicación o bien el que de el mejor resultado de todos ellos, sobrescribiendo así la elección del compresor presente en el script.

 

El script completo se puede bajar de aquí: nsi.nsi

 

 

De momento con esta herramienta únicamente podemos realizar instaladores para la plataforma Win32.

Si por ejemplo nuestra aplicación está escrita en Java y queremos realizar instaladores para diferentes plataformas existen otros proyectos:

http://www.izforge.com/izpack/

http://vainstall.sourceforge.net/

Ambos con licencia GNU General Public License (GPL).

 

 

 

 

 

A continuación puedes evaluarlo:

Regístrate para evaluarlo

Por favor, vota +1 o compártelo si te pareció interesante

Share |
Anímate y coméntanos lo que pienses sobre este TUTORIAL:

Fecha publicación: 2011-08-03-18:00:44

Autor: KIKEFX

hola me gustaria saber como creo otra subcarpeta y como hago los accesos directos en el escritorio, muchas gracias por tu informacion me sirve de mucho

Fecha publicación: 2011-07-31-04:38:03

Autor: SoloKvcd

He Creado uno y la vdd sin problemas, pero al querer crear Otro, Me Sumo a la pregunta de Andres64 como Agrego Archivos que se encuentren en otra carpeta y que queden en la carpeta de Instalacion tal cual dentro de sus carpetas correspondientes ?

Ejemplo:
File Carpeta/carpeta 2/carpeta 3/archivo.dll
File Carpeta/carpeta 2/Archivo.exe


Gracias.

Fecha publicación: 2011-06-28-12:54:13

Autor: DARES

Muy buenas lo primero excelente tutorial,
Tengo el siguiente problema y no consigo resolverlo, la verdad es que el tuturial me encaja perfectamente para mi proyecto, solo es introducir ficheros de carga y cambiar nombres, pero me da el siguiente error y no consigo solucionarlo:
Me podrías ayudar, puede ser por el tamaño del cliente de instalacion que quiero generar??

MakeNSIS v2.46 - Copyright 1995-2009 Contributors
See the file COPYING for license details.
Credits can be found in the Users Manual.

Processing plugin dlls: "C:Program FilesNSISPlugins*.dll"
- AdvSplash::show
- Banner::destroy
- Banner::getWindow
- Banner::show
- BgImage::AddImage
- BgImage::AddText
- BgImage::Clear
- BgImage::Destroy
- BgImage::Redraw
- BgImage::SetBg
- BgImage::SetReturn
- BgImage::Sound
- Dialer::AttemptConnect
- Dialer::AutodialHangup
- Dialer::AutodialOnline
- Dialer::AutodialUnattended
- Dialer::GetConnectedState
- InstallOptions::dialog
- InstallOptions::initDialog
- InstallOptions::show
- LangDLL::LangDialog
- Math::Script
- NSISdl::download
- NSISdl::download_quiet
- Splash::show
- StartMenu::Init
- StartMenu::Select
- StartMenu::Show
- System::Alloc
- System::Call
- System::Copy
- System::Free
- System::Get
- System::Int64Op
- System::Store
- TypeLib::GetLibVersion
- TypeLib::Register
- TypeLib::UnRegister
- UserInfo::GetAccountType
- UserInfo::GetName
- UserInfo::GetOriginalAccountType
- VPatch::GetFileCRC32
- VPatch::GetFileMD5
- VPatch::vpatchfile
- nsDialogs::Create
- nsDialogs::CreateControl
- nsDialogs::CreateItem
- nsDialogs::CreateTimer
- nsDialogs::GetUserData
- nsDialogs::KillTimer
- nsDialogs::OnBack
- nsDialogs::OnChange
- nsDialogs::OnClick
- nsDialogs::OnNotify
- nsDialogs::SelectFileDialog
- nsDialogs::SelectFolderDialog
- nsDialogs::SetRTL
- nsDialogs::SetUserData
- nsDialogs::Show
- nsExec::Exec
- nsExec::ExecToLog
- nsExec::ExecToStack

SetCompressor: /FINAL zlib
Command line defined: "VERSION=2.0"
Processing config:
!define: "MUI_INSERT_NSISCONF"=""

Changing directory to: "C:Program FilesNSISContribzip2exeArmageddonMir3"

Processing script file: "C:Program FilesNSISContribzip2exeArmageddonMir3Armageddon.nsi"
!include: "MUI2.nsh"
!include: "C:Program FilesNSISContribModern UI 2MUI2.nsh"
NSIS Modern User Interface version 2.0 - Copyright 2002-2009 Joost Verburg (C:Program FilesNSISContribModern UI 2MUI2.nsh:8)
!define: "MUI_INCLUDED"=""
!define: "MUI_SYSVERSION"="2.0"
!define: "MUI_VERBOSE"="3"
!include: closed: "C:Program FilesNSISContribModern UI 2MUI2.nsh"
!include: closed: "MUI2.nsh"
warning: SetCompressor ignored due to previous call with the /FINAL switch (C:Program FilesNSISContribzip2exeArmageddonMir3Armageddon.nsi:9)
!define: "mui_aborwarning"=""
!insertmacro: MUI_PAGE_WELCOME
!insertmacro: end of MUI_PAGE_WELCOME
!insertmacro: MUI_PAGE_LICENSE
!insertmacro: end of MUI_PAGEDECLARATION_LICENSE
!insertmacro: end of MUI_PAGE_LICENSE
!insertmacro: MUI_PAGE_COMPONENTS
!insertmacro: end of MUI_PAGE_COMPONENTS
!insertmacro: MUI_PAGE_DIRECTORY
!insertmacro: end of MUI_PAGE_DIRECTORY
!insertmacro: MUI_PAGE_INSTFILES
!insertmacro: end of MUI_PAGE_INSTFILES
!insertmacro: MUI_PAGE_FINISH
!insertmacro: end of MUI_PAGE_FINISH
!insertmacro: MUI_UNPAGE_WELCOME
!insertmacro: end of MUI_UNPAGE_WELCOME
!insertmacro: MUI_UNPAGE_CONFIRM
!insertmacro: end of MUI_UNPAGE_CONFIRM
!insertmacro: MUI_UNPAGE_INSTFILES
!insertmacro: end of MUI_UNPAGE_INSTFILES
!insertmacro: MUI_UNPAGE_FINISH
!insertmacro: end of MUI_UNPAGE_FINISH
!insertmacro: MUI_LANGUAGE
!insertmacro: end of MUI_LANGUAGE
Name: "Armageddonmir3"
Caption: "Armageddonmir3 2.0 para win32 setup"
CRCCheck: on
XPStyle: on
Var: "Path"
Var: "Path_acceso_directo"
InstallDir: "$programfilesarmageddonmir3"
InstallRegKey: "HKLMSOFTWAREarmageddonmir3Install_Dir"
DirText: "elija un directorio donde instalar Armageddonmir3" "" "" ""
AutoCloseWindow: false
showinstdetails: show
SetOverwrite: on
SetDatablockOptimize: on
SetCompress: auto
UninstallText: "Gracias por usar Armageddonmir3" ""
Section: "programa"
StrCpy $path "Armageddonmir3" () ()
StrCpy $path_acceso_directo "_Armageddonmir3_" () ()
SetOutPath: "$instdir$path"
File: "~Mir3Patch.dat" [compress] 67850/139264 bytes
File: "ArmageddonMir.exe" [compress] 631718/642048 bytes
File: "Chat.txt" [compress] 78019/333811 bytes
File: "dummy.txt" [compress] 0 bytes
File: "licencia.txt" [compress] 444/840 bytes
File: "BgmList.wwl" [compress] 1038/9730 bytes
File: "SoundList.wwl" [compress] 5993/17674 bytes
File: "CMList.dat" [compress] 20830/25683 bytes
File: "Config.ini" [compress] 189/327 bytes
File: "credit.edt" [compress] 427/490 bytes
File: "HL_Mir3G.ini" [compress] 629/1035 bytes
File: "Holley.Lng1" [compress] 966/2401 bytes
File: "Holley.Lng2" [compress] 334/571 bytes
File: "HolleyClient.dll" [compress] 345389/353280 bytes
File: "holleymir3.exe" [compress] 353629/356864 bytes
File: "Magic.exp" [compress] 23158/34764 bytes
File: "Map.Mif" [compress] 230 bytes
File: "MInfo.dat" [compress] 23426/51372 bytes
File: "mir3.cin" [compress] 228 bytes
File: "Mir3.INI" [compress] 143/269 bytes
File: "Mir3Patch.ini" [compress] 120/129 bytes
File: "mode.ini" [compress] 23 bytes
File: "npkcrypt.dll" [compress] 111149/225363 bytes
File: "HolleyClient.dll" [compress] 0/353280 bytes
File: "npkcrypt.dll" [compress] 0/225363 bytes
File: "npkpdb.dll" [compress] 17050/53248 bytes
File: "SCREEN0001.bmp" [compress] 250564/960066 bytes
File: "SCREEN0002.bmp" [compress] 250377/960066 bytes
File: "SCREEN0003.bmp" [compress] 250236/960066 bytes
File: "SCREEN0004.bmp" [compress] 250026/960066 bytes
File: "SCREEN0005.bmp" [compress] 250504/960066 bytes
File: "SCREEN0006.bmp" [compress] 250391/960066 bytes
File: "SCREEN0007.bmp" [compress] 250143/960066 bytes
File: "SCREEN0008.bmp" [compress] 250141/960066 bytes
File: "SCREEN0009.bmp" [compress] 250104/960066 bytes
File: "SCREEN0010.bmp" [compress] 249948/960066 bytes
File: "SCREEN0011.bmp" [compress] 249954/960066 bytes
File: "SCREEN0012.bmp" [compress] 250804/960066 bytes
File: "SCREEN0013.bmp" [compress] 250829/960066 bytes
File: "SCREEN0014.bmp" [compress] 250724/960066 bytes
File: "SCREEN0015.bmp" [compress] 250742/960066 bytes
File: "SCREEN0016.bmp" [compress] 250700/960066 bytes
File: "SCREEN0017.bmp" [compress] 250446/960066 bytes
File: "SCREEN0018.bmp" [compress] 250179/960066 bytes
File: "SCREEN0019.bmp" [compress] 250168/960066 bytes
File: "SCREEN0020.bmp" [compress] 250604/960066 bytes
File: "SCREEN0021.bmp" [compress] 249583/960066 bytes
File: "SCREEN0022.bmp" [compress] 249711/960066 bytes
File: "SCREEN0023.bmp" [compress] 250028/960066 bytes
File: "SCREEN0024.bmp" [compress] 250059/960066 bytes
File: "SCREEN0025.bmp" [compress] 249695/960066 bytes
File: "SCREEN0026.bmp" [compress] 249797/960066 bytes
File: "SCREEN0027.bmp" [compress] 250643/960066 bytes
File: "SCREEN0028.bmp" [compress] 250596/960066 bytes
File: "SCREEN0029.bmp" [compress] 250320/960066 bytes
File: "SCREEN0030.bmp" [compress] 250245/960066 bytes
File: "SCREEN0031.bmp" [compress] 250735/960066 bytes
File: "SCREEN0032.bmp" [compress] 250263/960066 bytes
File: "SCREEN0033.bmp" [compress] 250123/960066 bytes
File: "SCREEN0034.bmp" [compress] 249732/960066 bytes
File: "SCREEN0035.bmp" [compress] 250039/960066 bytes
File: "SCREEN0036.bmp" [compress] 249843/960066 bytes
File: "SCREEN0037.bmp" [compress] 249826/960066 bytes
File: "SCREEN0038.bmp" [compress] 250294/960066 bytes
File: "SCREEN0039.bmp" [compress] 250870/960066 bytes
File: "SCREEN0040.bmp" [compress] 250845/960066 bytes
File: "SCREEN0041.bmp" [compress] 250831/960066 bytes
File: "SCREEN0042.bmp" [compress] 250824/960066 bytes
File: "SCREEN0043.bmp" [compress] 249856/960066 bytes
File: "SCREEN0044.bmp" [compress] 249828/960066 bytes
File: "SCREEN0045.bmp" [compress] 250045/960066 bytes
File: "SCREEN0046.bmp" [compress] 250029/960066 bytes
File: "SCREEN0047.bmp" [compress] 250375/960066 bytes
File: "SCREEN0048.bmp" [compress] 250464/960066 bytes
File: "SCREEN0049.bmp" [compress] 249848/960066 bytes
File: "SCREEN0050.bmp" [compress] 249980/960066 bytes
File: "SCREEN0051.bmp" [compress] 249685/960066 bytes
File: "SCREEN0052.bmp" [compress] 249172/960066 bytes
File: "SCREEN0053.bmp" [compress] 249706/960066 bytes
File: "SCREEN0054.bmp" [compress] 249914/960066 bytes
File: "SCREEN0055.bmp" [compress] 250155/960066 bytes
File: "SCREEN0056.bmp" [compress] 249846/960066 bytes
File: "SCREEN0057.bmp" [compress] 249425/960066 bytes
File: "SCREEN0058.bmp" [compress] 250683/960066 bytes
File: "SCREEN0059.bmp" [compress] 250704/960066 bytes
File: "SCREEN0060.bmp" [compress] 250556/960066 bytes
File: "SCREEN0061.bmp" [compress] 250517/960066 bytes
File: "SCREEN0062.bmp" [compress] 249823/960066 bytes
File: "SCREEN0063.bmp" [compress] 249850/960066 bytes
File: "SCREEN0064.bmp" [compress] 249793/960066 bytes
File: "SCREEN0065.bmp" [compress] 250206/960066 bytes
File: "SCREEN0066.bmp" [compress] 250190/960066 bytes
File: "SCREEN0067.bmp" [compress] 249987/960066 bytes
File: "SCREEN0068.bmp" [compress] 250124/960066 bytes
File: "SCREEN0069.bmp" [compress] 250116/960066 bytes
File: "SCREEN0070.bmp" [compress] 250495/960066 bytes
File: "SCREEN0071.bmp" [compress] 250490/960066 bytes
File: "SCREEN0072.bmp" [compress] 251037/960066 bytes
File: "SCREEN0073.bmp" [compress] 251045/960066 bytes
File: "SCREEN0074.bmp" [compress] 250193/960066 bytes
File: "SCREEN0075.bmp" [compress] 250199/960066 bytes
File: "SCREEN0076.bmp" [compress] 250181/960066 bytes
File: "SCREEN0077.bmp" [compress] 249981/960066 bytes
File: "SCREEN0078.bmp" [compress] 249093/960066 bytes
File: "SCREEN0079.bmp" [compress] 249067/960066 bytes
File: "SCREEN0080.bmp" [compress] 249025/960066 bytes
File: "SCREEN0081.bmp" [compress] 249025/960066 bytes
File: "SCREEN0082.bmp" [compress] 248626/960066 bytes
File: "SCREEN0083.bmp" [compress] 249055/960066 bytes
File: "SCREEN0084.bmp" [compress] 249333/960066 bytes
File: "SCREEN0085.bmp" [compress] 248911/960066 bytes
File: "SCREEN0086.bmp" [compress] 249063/960066 bytes
File: "SCREEN0087.bmp" [compress] 249025/960066 bytes
File: "SCREEN0088.bmp" [compress] 248725/960066 bytes
File: "SCREEN0089.bmp" [compress] 0/960066 bytes
File: "SCREEN0090.bmp" [compress] 249269/960066 bytes
File: "SCREEN0091.bmp" [compress] 249313/960066 bytes
File: "SCREEN0092.bmp" [compress] 248896/960066 bytes
File: "SCREEN0093.bmp" [compress] 0/960066 bytes
File: "SCREEN0094.bmp" [compress] 248673/960066 bytes
File: "SCREEN0095.bmp" [compress] 248626/960066 bytes
File: "SCREEN0096.bmp" [compress] 248611/960066 bytes
File: "SCREEN0097.bmp" [compress] 248943/960066 bytes
File: "SCREEN0098.bmp" [compress] 249435/960066 bytes
File: "SCREEN0099.bmp" [compress] 249424/960066 bytes
File: "SCREEN0100.bmp" [compress] 545344/960066 bytes
File: "SCREEN0101.bmp" [compress] 544978/960066 bytes
File: "SCREEN0102.bmp" [compress] 544604/960066 bytes
File: "SCREEN0103.bmp" [compress] 543955/960066 bytes
File: "SCREEN0104.bmp" [compress] 0/960066 bytes
File: "SCREEN0105.bmp" [compress] 543268/960066 bytes
File: "SCREEN0106.bmp" [compress] 543267/960066 bytes
File: "SCREEN0107.bmp" [compress] 542278/960066 bytes
File: "SCREEN0108.bmp" [compress] 542280/960066 bytes
File: "SCREEN0109.bmp" [compress] 541516/960066 bytes
File: "SCREEN0110.bmp" [compress] 541453/960066 bytes
File: "SCREEN0111.bmp" [compress] 540360/960066 bytes
File: "SCREEN0112.bmp" [compress] 540639/960066 bytes
File: "SCREEN0113.bmp" [compress] 536162/960066 bytes
File: "SCREEN0114.bmp" [compress] 0/960066 bytes
File: "SCREEN0115.bmp" [compress] 536265/960066 bytes
File: "SCREEN0116.bmp" [compress] 0/960066 bytes
File: "SCREEN0117.bmp" [compress] 536262/960066 bytes
File: "SCREEN0118.bmp" [compress] 536257/960066 bytes
File: "SCREEN0119.bmp" [compress] 536247/960066 bytes
File: "SCREEN0120.bmp" [compress] 536251/960066 bytes
File: "SCREEN0121.bmp" [compress] 535898/960066 bytes
File: "SCREEN0122.bmp" [compress] 535879/960066 bytes
File: "SCREEN0123.bmp" [compress] 535904/960066 bytes
File: "SCREEN0124.bmp" [compress] 535897/960066 bytes
File: "SCREEN0125.bmp" [compress] 535922/960066 bytes
File: "SCREEN0126.bmp" [compress] 0/960066 bytes
File: "SCREEN0127.bmp" [compress] 535905/960066 bytes
File: "SCREEN0128.bmp" [compress] 535910/960066 bytes
File: "SCREEN0129.bmp" [compress] 536213/960066 bytes
File: "SCREEN0130.bmp" [compress] 535869/960066 bytes
File: "SCREEN0131.bmp" [compress] 535913/960066 bytes
File: "SCREEN0132.bmp" [compress] 0/960066 bytes
File: "SCREEN0133.bmp" [compress] 535951/960066 bytes
File: "SCREEN0134.bmp" [compress] 536007/960066 bytes
File: "SCREEN0135.bmp" [compress] 535962/960066 bytes
File: "SCREEN0136.bmp" [compress] 535954/960066 bytes
File: "SCREEN0137.bmp" [compress] 535884/960066 bytes
File: "SCREEN0138.bmp" [compress] 536196/960066 bytes
File: "SCREEN0139.bmp" [compress] 536252/960066 bytes
File: "SCREEN0140.bmp" [compress] 536249/960066 bytes
File: "SCREEN0141.bmp" [compress] 536242/960066 bytes
File: "SCREEN0142.bmp" [compress] 536209/960066 bytes
File: "SCREEN0143.bmp" [compress] 536159/960066 bytes
File: "SCREEN0144.bmp" [compress] 536161/960066 bytes
File: "SCREEN0145.bmp" [compress] 536132/960066 bytes
File: "SCREEN0146.bmp" [compress] 535898/960066 bytes
File: "SCREEN0147.bmp" [compress] 535893/960066 bytes
File: "SCREEN0148.bmp" [compress] 535902/960066 bytes
File: "SCREEN0149.bmp" [compress] 535900/960066 bytes
File: "SCREEN0150.bmp" [compress] 535964/960066 bytes
File: "SCREEN0151.bmp" [compress] 0/960066 bytes
File: "SCREEN0152.bmp" [compress] 535946/960066 bytes
File: "SCREEN0153.bmp" [compress] 535924/960066 bytes
File: "SCREEN0154.bmp" [compress] 536275/960066 bytes
File: "SCREEN0155.bmp" [compress] 536283/960066 bytes
File: "SCREEN0156.bmp" [compress] 536250/960066 bytes
File: "SCREEN0157.bmp" [compress] 536224/960066 bytes
File: "SCREEN0158.bmp" [compress] 0/960066 bytes
File: "SCREEN0159.bmp" [compress] 536113/960066 bytes
File: "SCREEN0160.bmp" [compress] 536109/960066 bytes
File: "SCREEN0161.bmp" [compress] 536112/960066 bytes
File: "SCREEN0162.bmp" [compress] 536171/960066 bytes
File: "SCREEN0163.bmp" [compress] 0/960066 bytes
File: "SCREEN0164.bmp" [compress] 535918/960066 bytes
File: "SCREEN0165.bmp" [compress] 535924/960066 bytes
File: "SCREEN0166.bmp" [compress] 535963/960066 bytes
File: "SCREEN0167.bmp" [compress] 0/960066 bytes
File: "SCREEN0168.bmp" [compress] 535960/960066 bytes
File: "SCREEN0169.bmp" [compress] 535978/960066 bytes
File: "SCREEN0170.bmp" [compress] 0/960066 bytes
File: "SCREEN0171.bmp" [compress] 535900/960066 bytes
File: "SCREEN0172.bmp" [compress] 0/960066 bytes
File: "SCREEN0173.bmp" [compress] 536212/960066 bytes
File: "SCREEN0174.bmp" [compress] 536239/960066 bytes
File: "SCREEN0175.bmp" [compress] 536239/960066 bytes
File: "SCREEN0176.bmp" [compress] 536245/960066 bytes
File: "SCREEN0177.bmp" [compress] 536234/960066 bytes
File: "SCREEN0178.bmp" [compress] 536114/960066 bytes
File: "SCREEN0179.bmp" [compress] 536159/960066 bytes
File: "SCREEN0180.bmp" [compress] 536131/960066 bytes
File: "SCREEN0181.bmp" [compress] 536132/960066 bytes
File: "SCREEN0182.bmp" [compress] 536133/960066 bytes
File: "SCREEN0183.bmp" [compress] 535909/960066 bytes
File: "SCREEN0184.bmp" [compress] 535929/960066 bytes
File: "SCREEN0185.bmp" [compress] 0/960066 bytes
File: "SCREEN0186.bmp" [compress] 535937/960066 bytes
File: "SCREEN0187.bmp" [compress] 535957/960066 bytes
File: "SCREEN0188.bmp" [compress] 535914/960066 bytes
File: "SCREEN0189.bmp" [compress] 535898/960066 bytes
File: "SCREEN0190.bmp" [compress] 0/960066 bytes
File: "SCREEN0191.bmp" [compress] 0/960066 bytes
File: "SCREEN0192.bmp" [compress] 536235/960066 bytes
File: "SCREEN0193.bmp" [compress] 536234/960066 bytes
File: "SCREEN0194.bmp" [compress] 0/960066 bytes
File: "SCREEN0195.bmp" [compress] 536280/960066 bytes
File: "SCREEN0196.bmp" [compress] 0/960066 bytes
File: "SCREEN0197.bmp" [compress] 536197/960066 bytes
File: "SCREEN0198.bmp" [compress] 536201/960066 bytes
File: "SCREEN0199.bmp" [compress] 536173/960066 bytes
File: "SCREEN0200.bmp" [compress] 536131/960066 bytes
File: "SCREEN0201.bmp" [compress] 535928/960066 bytes
File: "SCREEN0202.bmp" [compress] 535937/960066 bytes
File: "SCREEN0203.bmp" [compress] 535932/960066 bytes
File: "SCREEN0204.bmp" [compress] 535955/960066 bytes
File: "SCREEN0205.bmp" [compress] 535930/960066 bytes
File: "SCREEN0206.bmp" [compress] 535924/960066 bytes
File: "SCREEN0207.bmp" [compress] 535929/960066 bytes
File: "SCREEN0208.bmp" [compress] 0/960066 bytes
File: "SCREEN0209.bmp" [compress] 536272/960066 bytes
File: "SCREEN0210.bmp" [compress] 0/960066 bytes
File: "SCREEN0211.bmp" [compress] 536247/960066 bytes
File: "SCREEN0212.bmp" [compress] 536238/960066 bytes
File: "SCREEN0213.bmp" [compress] 536121/960066 bytes
File: "SCREEN0214.bmp" [compress] 536129/960066 bytes
File: "SCREEN0215.bmp" [compress] 536099/960066 bytes
File: "SCREEN0216.bmp" [compress] 0/960066 bytes
File: "SCREEN0217.bmp" [compress] 536134/960066 bytes
File: "SCREEN0218.bmp" [compress] 535959/960066 bytes
File: "SCREEN0219.bmp" [compress] 0/960066 bytes
File: "SCREEN0220.bmp" [compress] 535967/960066 bytes
File: "SCREEN0221.bmp" [compress] 536005/960066 bytes
File: "SCREEN0222.bmp" [compress] 535928/960066 bytes
File: "SCREEN0223.bmp" [compress] 535964/960066 bytes
File: "SCREEN0224.bmp" [compress] 535942/960066 bytes
File: "SCREEN0225.bmp" [compress] 535942/960066 bytes
File: "SCREEN0226.bmp" [compress] 536236/960066 bytes
File: "SCREEN0227.bmp" [compress] 536239/960066 bytes
File: "SCREEN0228.bmp" [compress] 536228/960066 bytes
File: "SCREEN0229.bmp" [compress] 536263/960066 bytes
File: "SCREEN0230.bmp" [compress] 536163/960066 bytes
File: "SCREEN0231.bmp" [compress] 536208/960066 bytes
File: "SCREEN0232.bmp" [compress] 536213/960066 bytes
File: "SCREEN0233.bmp" [compress] 536215/960066 bytes
File: "SCREEN0234.bmp" [compress] 536162/960066 bytes
File: "SCREEN0235.bmp" [compress] 535920/960066 bytes
File: "SCREEN0236.bmp" [compress] 0/960066 bytes
File: "SCREEN0237.bmp" [compress] 535883/960066 bytes
File: "SCREEN0238.bmp" [compress] 536025/960066 bytes
File: "SCREEN0239.bmp" [compress] 0/960066 bytes
File: "SCREEN0240.bmp" [compress] 536049/960066 bytes
File: "SCREEN0241.bmp" [compress] 0/960066 bytes
File: "SCREEN0242.bmp" [compress] 536089/960066 bytes
File: "SCREEN0243.bmp" [compress] 536142/960066 bytes
File: "SCREEN0244.bmp" [compress] 0/960066 bytes
File: "SCREEN0245.bmp" [compress] 536108/960066 bytes
File: "SCREEN0246.bmp" [compress] 536050/960066 bytes
File: "SCREEN0247.bmp" [compress] 536044/960066 bytes
File: "SCREEN0248.bmp" [compress] 536022/960066 bytes
File: "SCREEN0249.bmp" [compress] 536025/960066 bytes
File: "SCREEN0250.bmp" [compress] 536034/960066 bytes
File: "SCREEN0251.bmp" [compress] 536003/960066 bytes
File: "SCREEN0252.bmp" [compress] 536386/960066 bytes
File: "SCREEN0253.bmp" [compress] 536390/960066 bytes
File: "SCREEN0254.bmp" [compress] 536366/960066 bytes
File: "SCREEN0255.bmp" [compress] 536387/960066 bytes
File: "SCREEN0256.bmp" [compress] 536341/960066 bytes
File: "SCREEN0257.bmp" [compress] 0/960066 bytes
File: "SCREEN0258.bmp" [compress] 536311/960066 bytes
File: "SCREEN0259.bmp" [compress] 536349/960066 bytes
File: "SCREEN0260.bmp" [compress] 536068/960066 bytes
File: "SCREEN0261.bmp" [compress] 536058/960066 bytes
File: "SCREEN0262.bmp" [compress] 536031/960066 bytes
File: "UserPic.ini" [compress] 98/176 bytes
File: "Weapon.ord" [compress] 174/2640 bytes
File: "Config.ini" [compress] 0/327 bytes
File: "HL_Mir3G.ini" [compress] 0/1035 bytes
File: "Mir3.INI" [compress] 0/269 bytes
File: "Mir3Patch.ini" [compress] 0/129 bytes
File: "UserPic.ini" [compress] 0/176 bytes
File: "mode.ini" [compress] 0/23 bytes
File: "Armageddon.nsi" [compress] 2222/6300 bytes
File: "Armageddon.nsi~" [compress] 2221/6299 bytes
File: "ArmageddonMir.exe" [compress] 0/642048 bytes
File: "Base.nsh" [compress] 639/1940 bytes
File: "BgmList.wwl" [compress] 0/9730 bytes
File: "CMList.dat" [compress] 0/25683 bytes
File: "Chat.txt" [compress] 0/333811 bytes
File: "Classic.nsh" [compress] 99/118 bytes
File: "Config.ini" [compress] 0/327 bytes
File: "HL_Mir3G.ini" [compress] 0/1035 bytes
File: "Holley.Lng1" [compress] 0/2401 bytes
File: "Holley.Lng2" [compress] 0/571 bytes
File: "HolleyClient.dll" [compress] 0/353280 bytes
File: "MInfo.dat" [compress] 0/51372 bytes
File: "MUI2.nsh" [compress] 50 bytes
File: "Magic.exp" [compress] 0/34764 bytes
File: "Map.Mif" [compress] 0/230 bytes
File: "Mir3.INI" [compress] 0/269 bytes
File: "Mir3Patch.ini" [compress] 0/129 bytes
File: "Modern.nsh" [compress] 154/212 bytes
File: "SCREEN0001.bmp" [compress] 0/960066 bytes
File: "SCREEN0002.bmp" [compress] 0/960066 bytes
File: "SCREEN0003.bmp" [compress] 0/960066 bytes
File: "SCREEN0004.bmp" [compress] 0/960066 bytes
File: "SCREEN0005.bmp" [compress] 0/960066 bytes
File: "SCREEN0006.bmp" [compress] 0/960066 bytes
File: "SCREEN0007.bmp" [compress] 0/960066 bytes
File: "SCREEN0008.bmp" [compress] 0/960066 bytes
File: "SCREEN0009.bmp" [compress] 0/960066 bytes
File: "SCREEN0010.bmp" [compress] 0/960066 bytes
File: "SCREEN0011.bmp" [compress] 0/960066 bytes
File: "SCREEN0012.bmp" [compress] 0/960066 bytes
File: "SCREEN0013.bmp" [compress] 0/960066 bytes
File: "SCREEN0014.bmp" [compress] 0/960066 bytes
File: "SCREEN0015.bmp" [compress] 0/960066 bytes
File: "SCREEN0016.bmp" [compress] 0/960066 bytes
File: "SCREEN0017.bmp" [compress] 0/960066 bytes
File: "SCREEN0018.bmp" [compress] 0/960066 bytes
File: "SCREEN0019.bmp" [compress] 0/960066 bytes
File: "SCREEN0020.bmp" [compress] 0/960066 bytes
File: "SCREEN0021.bmp" [compress] 0/960066 bytes
File: "SCREEN0022.bmp" [compress] 0/960066 bytes
File: "SCREEN0023.bmp" [compress] 0/960066 bytes
File: "SCREEN0024.bmp" [compress] 0/960066 bytes
File: "SCREEN0025.bmp" [compress] 0/960066 bytes
File: "SCREEN0026.bmp" [compress] 0/960066 bytes
File: "SCREEN0027.bmp" [compress] 0/960066 bytes
File: "SCREEN0028.bmp" [compress] 0/960066 bytes
File: "SCREEN0029.bmp" [compress] 0/960066 bytes
File: "SCREEN0030.bmp" [compress] 0/960066 bytes
File: "SCREEN0031.bmp" [compress] 0/960066 bytes
File: "SCREEN0032.bmp" [compress] 0/960066 bytes
File: "SCREEN0033.bmp" [compress] 0/960066 bytes
File: "SCREEN0034.bmp" [compress] 0/960066 bytes
File: "SCREEN0035.bmp" [compress] 0/960066 bytes
File: "SCREEN0036.bmp" [compress] 0/960066 bytes
File: "SCREEN0037.bmp" [compress] 0/960066 bytes
File: "SCREEN0038.bmp" [compress] 0/960066 bytes
File: "SCREEN0039.bmp" [compress] 0/960066 bytes
File: "SCREEN0040.bmp" [compress] 0/960066 bytes
File: "SCREEN0041.bmp" [compress] 0/960066 bytes
File: "SCREEN0042.bmp" [compress] 0/960066 bytes
File: "SCREEN0043.bmp" [compress] 0/960066 bytes
File: "SCREEN0044.bmp" [compress] 0/960066 bytes
File: "SCREEN0045.bmp" [compress] 0/960066 bytes
File: "SCREEN0046.bmp" [compress] 0/960066 bytes
File: "SCREEN0047.bmp" [compress] 0/960066 bytes
File: "SCREEN0048.bmp" [compress] 0/960066 bytes
File: "SCREEN0049.bmp" [compress] 0/960066 bytes
File: "SCREEN0050.bmp" [compress] 0/960066 bytes
File: "SCREEN0051.bmp" [compress] 0/960066 bytes
File: "SCREEN0052.bmp" [compress] 0/960066 bytes
File: "SCREEN0053.bmp" [compress] 0/960066 bytes
File: "SCREEN0054.bmp" [compress] 0/960066 bytes
File: "SCREEN0055.bmp" [compress] 0/960066 bytes
File: "SCREEN0056.bmp" [compress] 0/960066 bytes
File: "SCREEN0057.bmp" [compress] 0/960066 bytes
File: "SCREEN0058.bmp" [compress] 0/960066 bytes
File: "SCREEN0059.bmp" [compress] 0/960066 bytes
File: "SCREEN0060.bmp" [compress] 0/960066 bytes
File: "SCREEN0061.bmp" [compress] 0/960066 bytes
File: "SCREEN0062.bmp" [compress] 0/960066 bytes
File: "SCREEN0063.bmp" [compress] 0/960066 bytes
File: "SCREEN0064.bmp" [compress] 0/960066 bytes
File: "SCREEN0065.bmp" [compress] 0/960066 bytes
File: "SCREEN0066.bmp" [compress] 0/960066 bytes
File: "SCREEN0067.bmp" [compress] 0/960066 bytes
File: "SCREEN0068.bmp" [compress] 0/960066 bytes
File: "SCREEN0069.bmp" [compress] 0/960066 bytes
File: "SCREEN0070.bmp" [compress] 0/960066 bytes
File: "SCREEN0071.bmp" [compress] 0/960066 bytes
File: "SCREEN0072.bmp" [compress] 0/960066 bytes
File: "SCREEN0073.bmp" [compress] 0/960066 bytes
File: "SCREEN0074.bmp" [compress] 0/960066 bytes
File: "SCREEN0075.bmp" [compress] 0/960066 bytes
File: "SCREEN0076.bmp" [compress] 0/960066 bytes
File: "SCREEN0077.bmp" [compress] 0/960066 bytes
File: "SCREEN0078.bmp" [compress] 0/960066 bytes
File: "SCREEN0079.bmp" [compress] 0/960066 bytes
File: "SCREEN0080.bmp" [compress] 0/960066 bytes
File: "SCREEN0081.bmp" [compress] 0/960066 bytes
File: "SCREEN0082.bmp" [compress] 0/960066 bytes
File: "SCREEN0083.bmp" [compress] 0/960066 bytes
File: "SCREEN0084.bmp" [compress] 0/960066 bytes
File: "SCREEN0085.bmp" [compress] 0/960066 bytes
File: "SCREEN0086.bmp" [compress] 0/960066 bytes
File: "SCREEN0087.bmp" [compress] 0/960066 bytes
File: "SCREEN0088.bmp" [compress] 0/960066 bytes
File: "SCREEN0089.bmp" [compress] 0/960066 bytes
File: "SCREEN0090.bmp" [compress] 0/960066 bytes
File: "SCREEN0091.bmp" [compress] 0/960066 bytes
File: "SCREEN0092.bmp" [compress] 0/960066 bytes
File: "SCREEN0093.bmp" [compress] 0/960066 bytes
File: "SCREEN0094.bmp" [compress] 0/960066 bytes
File: "SCREEN0095.bmp" [compress] 0/960066 bytes
File: "SCREEN0096.bmp" [compress] 0/960066 bytes
File: "SCREEN0097.bmp" [compress] 0/960066 bytes
File: "SCREEN0098.bmp" [compress] 0/960066 bytes
File: "SCREEN0099.bmp" [compress] 0/960066 bytes
File: "SCREEN0100.bmp" [compress] 0/960066 bytes
File: "SCREEN0101.bmp" [compress] 0/960066 bytes
File: "SCREEN0102.bmp" [compress] 0/960066 bytes
File: "SCREEN0103.bmp" [compress] 0/960066 bytes
File: "SCREEN0104.bmp" [compress] 0/960066 bytes
File: "SCREEN0105.bmp" [compress] 0/960066 bytes
File: "SCREEN0106.bmp" [compress] 0/960066 bytes
File: "SCREEN0107.bmp" [compress] 0/960066 bytes
File: "SCREEN0108.bmp" [compress] 0/960066 bytes
File: "SCREEN0109.bmp" [compress] 0/960066 bytes
File: "SCREEN0110.bmp" [compress] 0/960066 bytes
File: "SCREEN0111.bmp" [compress] 0/960066 bytes
File: "SCREEN0112.bmp" [compress] 0/960066 bytes
File: "SCREEN0113.bmp" [compress] 0/960066 bytes
File: "SCREEN0114.bmp" [compress] 0/960066 bytes
File: "SCREEN0115.bmp" [compress] 0/960066 bytes
File: "SCREEN0116.bmp" [compress] 0/960066 bytes
File: "SCREEN0117.bmp" [compress] 0/960066 bytes
File: "SCREEN0118.bmp" [compress] 0/960066 bytes
File: "SCREEN0119.bmp" [compress] 0/960066 bytes
File: "SCREEN0120.bmp" [compress] 0/960066 bytes
File: "SCREEN0121.bmp" [compress] 0/960066 bytes
File: "SCREEN0122.bmp" [compress] 0/960066 bytes
File: "SCREEN0123.bmp" [compress] 0/960066 bytes
File: "SCREEN0124.bmp" [compress] 0/960066 bytes
File: "SCREEN0125.bmp" [compress] 0/960066 bytes
File: "SCREEN0126.bmp" [compress] 0/960066 bytes
File: "SCREEN0127.bmp" [compress] 0/960066 bytes
File: "SCREEN0128.bmp" [compress] 0/960066 bytes
File: "SCREEN0129.bmp" [compress] 0/960066 bytes
File: "SCREEN0130.bmp" [compress] 0/960066 bytes
File: "SCREEN0131.bmp" [compress] 0/960066 bytes
File: "SCREEN0132.bmp" [compress] 0/960066 bytes
File: "SCREEN0133.bmp" [compress] 0/960066 bytes
File: "SCREEN0134.bmp" [compress] 0/960066 bytes
File: "SCREEN0135.bmp" [compress] 0/960066 bytes
File: "SCREEN0136.bmp" [compress] 0/960066 bytes
File: "SCREEN0137.bmp" [compress] 0/960066 bytes
File: "SCREEN0138.bmp" [compress] 0/960066 bytes
File: "SCREEN0139.bmp" [compress] 0/960066 bytes
File: "SCREEN0140.bmp" [compress] 0/960066 bytes
File: "SCREEN0141.bmp" [compress] 0/960066 bytes
File: "SCREEN0142.bmp" [compress] 0/960066 bytes
File: "SCREEN0143.bmp" [compress] 0/960066 bytes
File: "SCREEN0144.bmp" [compress] 0/960066 bytes
File: "SCREEN0145.bmp" [compress] 0/960066 bytes
File: "SCREEN0146.bmp" [compress] 0/960066 bytes
File: "SCREEN0147.bmp" [compress] 0/960066 bytes
File: "SCREEN0148.bmp" [compress] 0/960066 bytes
File: "SCREEN0149.bmp" [compress] 0/960066 bytes
File: "SCREEN0150.bmp" [compress] 0/960066 bytes
File: "SCREEN0151.bmp" [compress] 0/960066 bytes
File: "SCREEN0152.bmp" [compress] 0/960066 bytes
File: "SCREEN0153.bmp" [compress] 0/960066 bytes
File: "SCREEN0154.bmp" [compress] 0/960066 bytes
File: "SCREEN0155.bmp" [compress] 0/960066 bytes
File: "SCREEN0156.bmp" [compress] 0/960066 bytes
File: "SCREEN0157.bmp" [compress] 0/960066 bytes
File: "SCREEN0158.bmp" [compress] 0/960066 bytes
File: "SCREEN0159.bmp" [compress] 0/960066 bytes
File: "SCREEN0160.bmp" [compress] 0/960066 bytes
File: "SCREEN0161.bmp" [compress] 0/960066 bytes
File: "SCREEN0162.bmp" [compress] 0/960066 bytes
File: "SCREEN0163.bmp" [compress] 0/960066 bytes
File: "SCREEN0164.bmp" [compress] 0/960066 bytes
File: "SCREEN0165.bmp" [compress] 0/960066 bytes
File: "SCREEN0166.bmp" [compress] 0/960066 bytes
File: "SCREEN0167.bmp" [compress] 0/960066 bytes
File: "SCREEN0168.bmp" [compress] 0/960066 bytes
File: "SCREEN0169.bmp" [compress] 0/960066 bytes
File: "SCREEN0170.bmp" [compress] 0/960066 bytes
File: "SCREEN0171.bmp" [compress] 0/960066 bytes
File: "SCREEN0172.bmp" [compress] 0/960066 bytes
File: "SCREEN0173.bmp" [compress] 0/960066 bytes
File: "SCREEN0174.bmp" [compress] 0/960066 bytes
File: "SCREEN0175.bmp" [compress] 0/960066 bytes
File: "SCREEN0176.bmp" [compress] 0/960066 bytes
File: "SCREEN0177.bmp" [compress] 0/960066 bytes
File: "SCREEN0178.bmp" [compress] 0/960066 bytes
File: "SCREEN0179.bmp" [compress] 0/960066 bytes
File: "SCREEN0180.bmp" [compress] 0/960066 bytes
File: "SCREEN0181.bmp" [compress] 0/960066 bytes
File: "SCREEN0182.bmp" [compress] 0/960066 bytes
File: "SCREEN0183.bmp" [compress] 0/960066 bytes
File: "SCREEN0184.bmp" [compress] 0/960066 bytes
File: "SCREEN0185.bmp" [compress] 0/960066 bytes
File: "SCREEN0186.bmp" [compress] 0/960066 bytes
File: "SCREEN0187.bmp" [compress] 0/960066 bytes
File: "SCREEN0188.bmp" [compress] 0/960066 bytes
File: "SCREEN0189.bmp" [compress] 0/960066 bytes
File: "SCREEN0190.bmp" [compress] 0/960066 bytes
File: "SCREEN0191.bmp" [compress] 0/960066 bytes
File: "SCREEN0192.bmp" [compress] 0/960066 bytes
File: "SCREEN0193.bmp" [compress] 0/960066 bytes
File: "SCREEN0194.bmp" [compress] 0/960066 bytes
File: "SCREEN0195.bmp" [compress] 0/960066 bytes
File: "SCREEN0196.bmp" [compress] 0/960066 bytes
File: "SCREEN0197.bmp" [compress] 0/960066 bytes
File: "SCREEN0198.bmp" [compress] 0/960066 bytes
File: "SCREEN0199.bmp" [compress] 0/960066 bytes
File: "SCREEN0200.bmp" [compress] 0/960066 bytes
File: "SCREEN0201.bmp" [compress] 0/960066 bytes
File: "SCREEN0202.bmp" [compress] 0/960066 bytes
File: "SCREEN0203.bmp" [compress] 0/960066 bytes
File: "SCREEN0204.bmp" [compress] 0/960066 bytes
File: "SCREEN0205.bmp" [compress] 0/960066 bytes
File: "SCREEN0206.bmp" [compress] 0/960066 bytes
File: "SCREEN0207.bmp" [compress] 0/960066 bytes
File: "SCREEN0208.bmp" [compress] 0/960066 bytes
File: "SCREEN0209.bmp" [compress] 0/960066 bytes
File: "SCREEN0210.bmp" [compress] 0/960066 bytes
File: "SCREEN0211.bmp" [compress] 0/960066 bytes
File: "SCREEN0212.bmp" [compress] 0/960066 bytes
File: "SCREEN0213.bmp" [compress] 0/960066 bytes
File: "SCREEN0214.bmp" [compress] 0/960066 bytes
File: "SCREEN0215.bmp" [compress] 0/960066 bytes
File: "SCREEN0216.bmp" [compress] 0/960066 bytes
File: "SCREEN0217.bmp" [compress] 0/960066 bytes
File: "SCREEN0218.bmp" [compress] 0/960066 bytes
File: "SCREEN0219.bmp" [compress] 0/960066 bytes
File: "SCREEN0220.bmp" [compress] 0/960066 bytes
File: "SCREEN0221.bmp" [compress] 0/960066 bytes
File: "SCREEN0222.bmp" [compress] 0/960066 bytes
File: "SCREEN0223.bmp" [compress] 0/960066 bytes
File: "SCREEN0224.bmp" [compress] 0/960066 bytes
File: "SCREEN0225.bmp" [compress] 0/960066 bytes
File: "SCREEN0226.bmp" [compress] 0/960066 bytes
File: "SCREEN0227.bmp" [compress] 0/960066 bytes
File: "SCREEN0228.bmp" [compress] 0/960066 bytes
File: "SCREEN0229.bmp" [compress] 0/960066 bytes
File: "SCREEN0230.bmp" [compress] 0/960066 bytes
File: "SCREEN0231.bmp" [compress] 0/960066 bytes
File: "SCREEN0232.bmp" [compress] 0/960066 bytes
File: "SCREEN0233.bmp" [compress] 0/960066 bytes
File: "SCREEN0234.bmp" [compress] 0/960066 bytes
File: "SCREEN0235.bmp" [compress] 0/960066 bytes
File: "SCREEN0236.bmp" [compress] 0/960066 bytes
File: "SCREEN0237.bmp" [compress] 0/960066 bytes
File: "SCREEN0238.bmp" [compress] 0/960066 bytes
File: "SCREEN0239.bmp" [compress] 0/960066 bytes
File: "SCREEN0240.bmp" [compress] 0/960066 bytes
File: "SCREEN0241.bmp" [compress] 0/960066 bytes
File: "SCREEN0242.bmp" [compress] 0/960066 bytes
File: "SCREEN0243.bmp" [compress] 0/960066 bytes
File: "SCREEN0244.bmp" [compress] 0/960066 bytes
File: "SCREEN0245.bmp" [compress] 0/960066 bytes
File: "SCREEN0246.bmp" [compress] 0/960066 bytes
File: "SCREEN0247.bmp" [compress] 0/960066 bytes
File: "SCREEN0248.bmp" [compress] 0/960066 bytes
File: "SCREEN0249.bmp" [compress] 0/960066 bytes
File: "SCREEN0250.bmp" [compress] 0/960066 bytes
File: "SCREEN0251.bmp" [compress] 0/960066 bytes
File: "SCREEN0252.bmp" [compress] 0/960066 bytes
File: "SCREEN0253.bmp" [compress] 0/960066 bytes
File: "SCREEN0254.bmp" [compress] 0/960066 bytes
File: "SCREEN0255.bmp" [compress] 0/960066 bytes
File: "SCREEN0256.bmp" [compress] 0/960066 bytes
File: "SCREEN0257.bmp" [compress] 0/960066 bytes
File: "SCREEN0258.bmp" [compress] 0/960066 bytes
File: "SCREEN0259.bmp" [compress] 0/960066 bytes
File: "SCREEN0260.bmp" [compress] 0/960066 bytes
File: "SCREEN0261.bmp" [compress] 0/960066 bytes
File: "SCREEN0262.bmp" [compress] 0/960066 bytes
File: "SoundList.wwl" [compress] 0/17674 bytes
File: "Thumbs.db" [compress] 90529/103936 bytes
File: "UserPic.ini" [compress] 0/176 bytes
File: "Weapon.ord" [compress] 0/2640 bytes
File: "credit.edt" [compress] 0/490 bytes
File: "dummy.txt" [compress] 0 bytes
File: "holleymir3.exe" [compress] 0/356864 bytes
File: "licencia.txt" [compress] 0/840 bytes
File: "mir3.cin" [compress] 0/228 bytes
File: "mode.ini" [compress] 0/23 bytes
File: "npkcrypt.dll" [compress] 0/225363 bytes
File: "npkpdb.dll" [compress] 0/53248 bytes
File: "~Mir3Patch.dat" [compress] 0/139264 bytes
SetShellVarContext: all
CreateDirectory: "$SMPROGRAMS$PATH_ACCESO_DIRECTO"
CreateShortCut: "$SMPROGRAMS$PATH_ACCESO_DIRECTOEjemplo.lnk"->"$INSTDIRarmageddonmir.exe" --parametros parametro1 icon:,0, showmode=0x0, hotkey=0x0, comment=
CreateShortCut: "$SMPROGRAMS$PATH_ACCESO_DIRECTOLicencia.lnk"->"$INSTDIRlicencia.html" icon:,0, showmode=0x0, hotkey=0x0, comment=
CreateShortCut: "$SMPROGRAMS$PATH_ACCESO_DIRECTODesinstalar.lnk"->"$INSTDIRuninstall.exe" icon:,0, showmode=0x0, hotkey=0x0, comment=
WriteRegStr: HKLMSOFTWAREMicrosoftWindowsCurrentVersionUninstall$PATHDisplayName=Aplicación para Armageddonmir3 2.0
WriteRegStr: HKLMSOFTWAREMicrosoftWindowsCurrentVersionUninstall$PATHUninstallString="$INSTDIRuninstall.exe"
WriteUninstaller: "uninstall.exe"
WriteRegStr: HKLMSOFTWARE$PATHInstallDir=$INSTDIR
WriteRegStr: HKLMSOFTWARE$PATHVersion=2.0
Exec: "explorer $SMPROGRAMS$PATH_ACCESO_DIRECTO" (->)
SectionEnd
Section: "Ayuda"
SetOutPath: "$INSTDIR$PATH"
StrCpy $PATH "Armageddonmir3" () ()
StrCpy $PATH_ACCESO_DIRECTO "_Armageddonmir_" () ()
File: Descending to: ".ayuda"
File: "Ayuda.txt" [compress] 0 bytes
File: "dummy.txt" [compress] 0 bytes
File: Returning to: "."
SectionEnd
Section: "Skins"
SetOutPath: "$INSTDIR$PATH"
StrCpy $PATH "Armageddonmir3" () ()
StrCpy $PATH_ACCESO_DIRECTO "_Armageddonmir_" () ()
File: Descending to: ".skins"
File: "closed.gif" [compress] 197/203 bytes
File: "header.gif" [compress] 6023 bytes
File: "open.gif" [compress] 138 bytes
File: "screen1.png" [compress] 15579/15647 bytes
File: "screen2.png" [compress] 17930/18437 bytes
File: Returning to: "."
SectionEnd
Section: "Plugins"
SetOutPath: "$INSTDIR$PATH"
StrCpy $PATH "Armageddonmir3" () ()
StrCpy $PATH_ACCESO_DIRECTO "_Armageddonmir_" () ()
File: Descending to: ".Plugins"
File: "AdvSplash.dll" [compress] 2705/6144 bytes
File: "Banner.dll" [compress] 1473/4096 bytes
File: "BgImage.dll" [compress] 3867/7680 bytes
File: "Dialer.dll" [compress] 944/3584 bytes
File: "InstallOptions.dll" [compress] 8005/14848 bytes
File: "LangDLL.dll" [compress] 2203/5632 bytes
File: "Math.dll" [compress] 35648/67584 bytes
File: "NSISdl.dll" [compress] 8517/14848 bytes
File: "Splash.dll" [compress] 1621/4096 bytes
File: "StartMenu.dll" [compress] 3328/7680 bytes
File: "System.dll" [compress] 0/11264 bytes
File: "TypeLib.dll" [compress] 982/3584 bytes
File: "UserInfo.dll" [compress] 1336/4096 bytes
File: "VPatch.dll" [compress] 4429/8192 bytes
File: "nsDialogs.dll" [compress] 0/9728 bytes
File: "nsExec.dll" [compress] 3142/6656 bytes
File: Returning to: "."
SectionEnd
Section: "Uninstall"
StrCpy $PATH "Armageddonmir3" () ()
StrCpy $PATH_ACCESO_DIRECTO "_Armageddonmir_" () ()
SetShellVarContext: all
RMDir: /r "$SMPROGRAMS$PATH_ACCESO_DIRECTO"
RMDir: /r "$INSTDIR$PATH"
RMDir: /r "$INSTDIR"
DeleteRegKey: HKLMSOFTWARE$PATH
DeleteRegKey: HKLMsoftwareMicrosoftWindowsCurrentVersionUninstall$PATH
SectionEnd

Processed 1 file, 1 command line command, writing output:
Error: invalid script: never had OutFile command
Error - aborting creation process

Fecha publicación: 2011-06-21-03:23:00

Autor: Andres64

como hago para cear una carpeta dentro de la direccion selecionada, es decir, si eligi C:/Aplicacion , que me crea una carpeta de forma de que quede C:/Aplicacion/carpeta, me podrias ayduarme en eso? gracias por su atencion

Fecha publicación: 2010-07-24-18:36:11

Autor: danilo

hola.
excelente tutorial, pero tengo un problema, necesito que en el menu inicio quede un acceso directo .bat para poder ejecutar la aplicacion, y efectivamente queda pero con un contenido muy diferente, al parecer el nsis cambia la ruta de algo en el .bat o no se que rayos pasa.
espero haber sido claro

Fecha publicación: 2009-05-17-07:59:56

Autor:

[kym] hola muy buen tuto, oye ya vez que en la seccion de componentes aparecen: programa ayuda skins plugins y ves que todos aparecen activados por default, como hacer para que aparezca uno sin marcar por default de lo agradeceria.

Fecha publicación: 2007-04-08-08:17:21

Autor:

[Leiker] oigan una pregunta y ojala me la puedan responder a mi correo por ejemplo si quiero crear un directorio en la carpeta LEiker Acevedo ...........osea separado los nombres que tengo q hacer porque cuando lo hago asi separado no puedo contunuar

Fecha publicación: 2006-12-19-06:52:25

Autor:

[javier] Nunca he hecho scrips, asi que esta muy dificil y debería de explicar de una forma más detallada.

Fecha publicación: 2006-08-26-06:06:36

Autor:

[pilar aguirre] El tutorial esta excelente, muy bien explicado, muchisimas gracias.....