Sie sind auf Seite 1von 4

7-Zip para instaladores

Veja meu exemplo AQUI 7-Zip um compactador de arquivos para Windows 98/ME/NT/2000/2003/XP/VISTA e 7. 7-Zip Copyright (C) 1999-2011 Igor Pavlov. 7zr.exe a verso reduzida do 7za.exe do 7-Zip. 7zr.exe suporta apenas formato 7z com estes codecs: LZMA, LZMA2, BCJ, BCJ2, ARM, Copy. Exemplo do comando de compresso para pacotes de instalao: 7zr a -t7z archive.7z * -m0=BCJ2 -m1=LZMA:d25:fb255 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 mb0s2:3 -mx 7zSD.sfx o mdulo SFX para instaladores (ele usa msvcrt.dll) O mdulo SFX para instaladores (7zS.sfx e 7zSD.sfx) permite criar programa de instalao. Tal mdulo extrai arquivo para a pasta temp e executa o programa especificado e remove os arquivos temporrios aps o trmino. O arquivo Auto-Extraivel para instaladores devem ser criados juntando 3 arquivos: SFX_Module, Installer_Config e 7z_Archive. Installer_Config um arquivo excelente. Voc pode usar os seguintes comandos para criar o arquivo AutoExtravel para instaladores: copy /b 7zSD.sfx + config.txt + archive.7z archive.exe O menor tamanho do pacote de instalao pode ser alcanado se os arquivos de instalao estiverem descompactados antes, incluindo o arquivo 7z. -y opo para mdulo de instalador (at runtime) especifica modo silencioso para extrao. Formato do arquivo de configurao do Instalador O arquivo Config contm comandos para Instalador. O arquivo deve iniciar com: ;!@Install@!UTF-8! e terminar com: ;!@InstallEnd@! O arquivo deve ser formatado em UTF-8. O arquivo contm os pares de linhas (string): ID_String="Value"

ID_String
Title BeginPrompt Progress RunProgram Directory ExecuteFile

Descrio
Ttulo para mensagem Inicia a mensagem no Prompt O Valor pode ser "yes" ou "no". O valor padro "yes". Comando de execuo. O valor padro "setup.exe". Substring %%T sero substitudos com caminho para a pasta temp, onde os arquivos foram extrados Prefixo da pasta para "RunProgram". O valor padro ".\\" Nome do arquivo a ser executado

ExecuteParameters Parmetros para "ExecuteFile"

Voc pode omitir qualquer um dos valores. H dois modos para executar programa: RunProgram ou ExecuteFile Use RunProgram se voc deseja executar algum programa de um arquivo .7z. Use ExecuteFile se voc deseja abrir algum documento de um arquivo .7z ou se voc deseja executar algum comando do Windows. Se voc usar RunProgram e se voc especificar um prefixo de diretrio vazio: Directory="", o sistema procura pelo arquivo executvel na sequncia seguinte: 1. O diretrio de onde o aplicativo (installer) foi carregado. 2. O diretrio temporrio, onde os arquivos foram extrados. 3. O diretrio do Sistema do Windows. Exemplos do arquivo Config ;!@Install@!UTF-8! Title="7-Zip 4.00" BeginPrompt="Deseja instalar o 7-Zip 4.00?" RunProgram="setup.exe" ;!@InstallEnd@! ;!@Install@!UTF-8! Title="7-Zip 4.00" BeginPrompt=" Deseja instalar o 7-Zip 4.00?" ExecuteFile="7zip.msi" ;!@InstallEnd@! ;!@Install@!UTF-8! Title="7Zip 4.01 Update" BeginPrompt=" Deseja instalar a atualizao 7-Zip 4.01?" ExecuteFile="msiexec.exe" ExecuteParameters="/i 7zip.msi REINSTALL=ALL REINSTALLMODE=vomus" ;!@InstallEnd@! Mdulos SFX pequenos para instaladores 7zS2.sfx - Mdulo SFX pequeno (GUI version) 7zS2con.sfx - Mdulo SFX pequeno (Console version) Mdulos SFX pequenos suportam estes codecs: LZMA, LZMA2, BCJ, BCJ2, ARM, COPY Mdulo SFX pequeno similar ao mdulo SFX comum para instaladores. A diferena (que nova na verso pequena): Tamanho menor (28 KB vs 100 KB) Cdigo fonte C ao invs de ++ Nenhum arquivo de Configurao do Instalador Nenhuma janela de progresso da instalao O bloco slido 7z descompactado (pode ser o 7z) para a RAM (memria). Assim o usurio que executa o Instalador SFX deve ter memria RAM livre maior que o bloco slido 7z (tamanho do arquivo 7z pelo menos). Como usar copy /b 7zS2.sfx + archive.7z sfx.exe Quando voc executa o mdulo instalador SFX (sfx.exe) 1. Ele cria "7zNNNNNNNN" na pasta temp da pasta temp do sistema. 2. Ele extrai .7z archive para aquela pasta. 3. Ele executa um arquivo "7zNNNNNNNN" da pasta temp. 4. Ele remove "7zNNNNNNNN" da pasta temp. Voc pode enviar parmetros para o instalador e o instalador os transferir para o arquivo .exe extrado. O pequeno SFX usa 3 nveis de prioridades para selecionar o arquivo a ser executado:

1. Arquivos na pasta RAIZ tem mais alta prioridade que arquivos em subpastas. 2. Prioridade pela extenso do arquivo (ordem de prioridade do mais alto ao mais baixo): bat, exe, inf, msi, cab (no Windows CE), html, htm 3. Prioridade pelo nome do arquivo (ordem de prioridade do mais alto ao mais baixo): setup, install, run, start A verso para Windows CE (ARM) do 7zS2.sfx est inclusa no pacote do 7-Zip para Windows Mobile. Exemplos 1. Para criar compactado console 7-Zip: 7z a c.7z 7z.exe 7z.dll -m0=lzma2 -mx copy /b 7zS2con.sfx + c.7z 7zCompr.exe 7zCompr.exe b -md22 2. Para criar compactado GUI 7-Zip: 7z a g.7z 7zg.exe 7z.dll -mx copy /b 7zS2.sfx + g.7z 7zgCompr.exe 7zgCompr.exe b -md22 3. Para abrir algum arquivo: 7z a h.7z readme.txt -mx copy /b 7zS2.sfx + h.7z 7zTxt.exe 7zTxt.exe

Exemplo do Vilmar:
1. Copie os seguintes arquivos da pasta onde instalou o 7-zip para uma nica pasta denominada, por exemplo como SFX: 7zr.exe 7zr.exe config.txt Construir.bat Dentro da pasta SFX criada, crie outra pasta denominada DADOS e coloque dentro da pasta DADOS todos os arquivos necessrios para a instalao (no exemplo ela dever conter o Arquivo.bat). 2. Arquivo config.txt (DEVE ser codificado em UTF-8) O arquivo de configurao config.txt tem as opes mostradas abaixo. Ele fornece as informaes ao 7-zip do que voc deseja apresentar na instalao de um software. As opes podem ser revistas uma a uma no texto anterior deste manual. ;!@Install@!UTF-8! ;Title="Vilmar 5.00" ;BeginPrompt="Voc deseja instalar o Vilmar 5.00?" Progress="No" RunProgram="Arquivo.bat" ;Directory= ;ExecuteFile= ;ExecuteParameters= ;!@InstallEnd@!

iniciando com ; comentrio! iniciando com ; comentrio! iniciando com ; comentrio! iniciando com ; comentrio! iniciando com ; comentrio!

3. O arquivo Construir.bat ir criar o arquivo compactado Archive.7z e a partir deste criar o archive.exe que o arquivo compactado executvel que voc programou. del archive.7z del archive.exe 7zr a archive.7z .\DADOS\* -m0=BCJ2 -m1=LZMA:d25:fb255 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3 -mx copy /b 7zSD.sfx + config.txt + archive.7z archive.exe 4. A pasta DADOS dever conter todos os arquivos necessrios para a instalao (no exemplo ela dever conter o Arquivo.bat). a. Sero deletados os archive.7z e archive.exe existentes; b. Sero criados dois arquivos compactados, o primeiro denominado archive.7z (descartvel) e o archive.exe que o arquivo principal, aps isto mude seu nome para o que desejar e seu cone que pode ser como o do programa que voc pretende instalar. Copie os arquivos 7zSD.sfx e 7zr.exe para a pasta principal onde se encontram os arquivos config.txt e construir.bat e est pronto! Nota 01: Na 3 linha do arquivo Construir.bat a instruo .\DADOS\* faz com que todos os arquivos na pasta DADOS, menos a pasta, sejam compactados pelo 7zr.exe. Se for colocado DADOS\* ele compacta a pasta e os arquivos. Nota 02: Neste exemplo, o arquivo.bat que est na pasta dados abre uma janela sobre o que se quer fazer na tasta Recents do windows 7. Mostra 3 opes, A para abrir a pasta, D para deletar os arquivos da pasta e C para cancelar. A janela abre como a da figura abaixo:

Traduo e complementao por Vilmar dez/2011

Das könnte Ihnen auch gefallen