Atendendo a diversos pedidos foi criado um tutorial em ingles no site portableappz que nos deu um script pré-formulado e desde então temos desenvolvido um script apartir deste seguimento.

Este tutorial também tem como base um script, onde vou tentar explicar de uma forma simples e com imagens para facilitar o entendimento. Se você quer aprender a criar portables com este método, deve estudar este tutorial por varias vezes e fazer testes primeiro com programas pequenos para depois partir para os mais dificultosos, apesar que devo dizer que alguns programas não podem ser portabilizados, por causa da sua complexidade nas chaves ou os muitos drivers e serviços que são instalados e exigidos por ele.

Baixar: NSIS - Total Uninstall - script

Ora! nem é preciso dizer que você terá que instalar o NSIS no seu computador assim como os plugins que o script exigirá.
Para facilitar as coisas eu tenho a pasta do NSIS já com todos os plugins instalados, bastando substitur pela do NSIS que estará em C:\Arquivos de programas.

1- Então faça já isso. Baixe o NSIS e baixe a pasta NSIS.
E depois que fizer a substituição você deve ir até a pasta C:|Arquivos de programas\NSIS e clique em InstallContextMenu.exe para instalar também um Menu de contexto.

2- Baixe o Total Uninstall

3- Baixe o Script MeuProgramaPortable

4- Baixe NSIS_Constants ou Aqui descompacte e execute NSIS_Constants.exe para conhecer os caminhos ou as variáveis NSIS do seu computador.

Quero deixar aqui disponível um script simples com possibilidade de abrir um Splash para executar na pasta atual, e que pode perfeitamente ser utilizado no ThinApp, Spoom ou WinRar. Para baixa-lo clique aqui .

Agora que você já tem na mão todas as ferramentas necessárias, já pode fazer também o seu, e não se esqueça de nos fazer uma visita. Este tutorial fala sobre emulação chaves, pastas e arquivos

Parte 1 - Capturar uma instalação com Total Uninstall

1- Abrir o Totall Uninstall Clicar em Instalar




2- Clique no botão Navegar para indicar o caminho do instalador. Em cima, o nome da fotografia vai aparecer um sugerido, mas pode ser qualquer nome. Depois clique em Seguinte>>. (Neste exemplo eu estou utilizando o Clone DVD 5 ).




3- Aqui ele está scaneando o sistema e vai fotografar o estado antes da instalação. Aguarde



4- Depois da fotografia tirada vai aparecer a próxima tela e você clique em Seguinte para Instalar o programa no computador.




5- Agora vai abrir o instalador. Você instala o programa e no final, se for possível, não execute ele, apenas feche no final da instalação. Chave, serial, etc.. fica pra depois. Nós queremos saber apenas o que ele instala antes de executar ele certo ?




6- Depois disso volte à téla do Total Uninstall e clique em Seguinte>> para fazer a captura.



7- Nesta téla ele vai escanear e fazer a captura. Quando terminar você clica em Fechar para irmos para as pastas.



8- No Totall uninstall Clique em Mudanças e da janéla dele mesmo você pode copiar as pastas. Vamos copiar primeiro a pasta principal de C:\Arquivos de programas. Clique com o direito do mouse sobre a pasta e selecione Copiar




9- Crie uma pasta com o nome principal + Portable. Tipo assim CloneDVDPortable. Aguns scripts só compilam assim. mas o nosso script não tem problema. Pode ser qualquer nome e pode ter espaço, sem problema. A minha pasta ficou como CloneDVD Portable. Dentro, crie mais uma chamada App e dentro da App crie mais uma renomeado como DefaultData. Na pasta App cole a pasta principal. No meu caso éla se chama Clonedvd5




10 - Na pasta DefaultData você vai colocar as pastas e arquivos que devem ser emulados pelo seu programa certo ? Então voltamos para a janéla do Total Uninstall e copiamos a pasta que ele criou em AllUser\Dados de aplicativoschamada DVDXStudio . Tem uma outra que ele criou em User\Dados de aplicativos chamada Vso, mas éssa é de um driver simples que ele instala, mas não é necessário emular esta pasta pois o programa não precisa deste driver. Então vamos lá, copiamos a pasta certa e colamos em DefaultData.




12- Agora vamos aos arquivos, pois não tem mais pasta nenhuma. Ele instalou um arquivo em C:\WINDOWS\system32 chamado sycd5.dll . Então vamos lá e copiamos este arquivo.




13- Pronto a pasta DefaultData está com a pasta e o arquivo que o programa prescisa, mas ainda falta copiar as chaves de registro.



14- Ainda na janela do Total Uninstal selecione Registro na aba Mudanças e clique em cima no Menu Ficheiros\Exportar\Alterações de registro



15- Na próxima téla Clique Ok





16- Salve em qualquer lugar ou provizoriamente na pasta do portable




17- Bom, agora chegou a hora de abrir o programa, colocar serial, aplicar Path ou crack e analizar as novas mudanças feitas no registro e no PC. No meu caso aqui, não tem serial, mas um Path que faz o programa funcionar normalmente. Então vamos lá, é importante sabermos o que ele cria, já que a pasta que ele criou na instalação em AllUser\Dados de aplicativos está vazia. Para não perdermos nada, temos que fazer isso pelo Total uninstall. Então clique em cima no botão Atualizar




18- Desta vez você vai indicar o caminho do lançador em C:\Arquivos de programas para o programa abrir. No meu caso, o lançador se chama MainApp.EXE . do jeito que está lá na pasta do programa. Você vai fazer isso e clicar em Seguinte>> para continuar da mesma forma que foi feito no inicio. E o programa vai abrir e se tiver, você coloca o serial e etc.. Depois você fecha o programa e continua no total Uninstall para a nova captura, igual o já feito anteriormente.




19- Por segurança, eu recomendo criar uma pasta provisória. No meu caso eu criei uma chamada Backup e copiei novamente as pastas que ele criou + a nova chave de registro para verificar a diferença.



20- Aqui no meu programa ele criou um monte de arquivo na pasta de AllUser\Dados de aplicativos e o registro também aumentou o tamanho. Se algum programa tiver que colocar serial, normalmente ele estará no registro ou na pasta que ele criou, isso depende do programa. No meu caso aqui, como eu usei o Path não vai alterar nada. Mas o registro vai ser usado no script que vamos usar no próximo passo.

Parte 2 - Preencher e compilar um script para criar um lançador

1- Para esta parte você teria que baixar o script MeuProgramaPortable e utilizar a pasta sources, que pra ficar mais perto, pode ser copiada na pasta do portable provisóriamente, mas não é obrigatório.


2- Na pasta sources você tem que ter um ícone formato .ico com o nome do programa (No meu caso CloneDVD.ico) e se desejar um splash na inicialização deve colocar também uma imagem no formato .bmp, também com o nome do programa seguido da palavra Splash "sem espaço". No meu caso ficou como CloneDVDSplash.




3- Detalhe da imagem é que ela deve ser envolvida pelo branco, pois o script está configurado assim, para fazer diferente teria que mudar o script, mas não vamos entrar nesta parte agora. Veja o exemplo da imagem aberta para você ter uma idéia da coisa.



4- ===Define constants=== Abra o script MeuProgramaPortable com o bloco de notas mesmo ou notepad++ e no inicio preencha:

!define VER se quizer, pode deixar como está 0.0.0.0
!define APPNAME pode colocar o nome que quizer ou nada
!define APP Coloque o nome do portable, (mesmo nome do Ícone e do splash) 
!define APPEXE Nome do lançador deve igual o da pasta principal do programa
!define APPDIR Coloque o caminho da pasta do programa
!define APPSWITCH não faz nada




5- ---Define Local Dirs---
Logo abaixo temos --- Define RegKeys --- mas vamos pular a parte das chaves, porque isso será depois.
Vimos que o programa criou apenas uma pasta em Alluser\Dados de aplicativos,
Para funcionar no XP PT, Ingles e Windows 7, 8, Vista devemos adicionar pelo menos 3 caminhos:

$%ALLUSERSPROFILE%\DADOSD~1\nome da pasta
$%ALLUSERSPROFILE%\APPLIC~1\nome da pasta
$%HOMEDRIVE%\ProgramData\nome da pasta
ou $%HOMEDRIVE%\PROGRA~1\nome da pasta

Recomendação= É recomendo primeiramente testar com o comando : $APPDATA\nome da pasta
caso não funcionar, então deve-se especificar o caminho direto (neste caso você pode especificar os 3 caminhos para garantir que ele funcione no XP PT, ENG e Win 7, 8, Vista


EX. (testar com este caminho)

!define LOCALDIR1 "$APPDATA\DVDXStudio"
!define SUBDIR1 ""Aqui não Faz nada
!define PORTABLEDIR1 "$EXEDIR\Data\DVDXStudio"
!define DEFAULTPORTABLEDIR1 "$EXEDIR\App\DefaultData\DVDXStudio"

EX: (Se não funcionar, testar com os 3 caminhos)

!define LOCALDIR1 "$%ALLUSERSPROFILE%\DADOSD~1\DVDXStudio"
!define SUBDIR1 ""Aqui não Faz nada
!define PORTABLEDIR1 "$EXEDIR\Data\DVDXStudio"
!define DEFAULTPORTABLEDIR1 "$EXEDIR\App\DefaultData\DVDXStudio"

!define LOCALDIR2 "$%ALLUSERSPROFILE%\APPLIC~1\DVDXStudio"
!define SUBDIR2 ""Aqui não Faz nada
!define PORTABLEDIR2 "$EXEDIR\Data\DVDXStudio(1)"
!define DEFAULTPORTABLEDIR2 "$EXEDIR\App\DefaultData\DVDXStudio"

!define LOCALDIR3 "$%HOMEDRIVE%\PROGRA~1\DVDXStudio"
!define SUBDIR3 ""
!define PORTABLEDIR3 "$EXEDIR\Data\DVDXStudio(2)"
!define DEFAULTPORTABLEDIR3 "$EXEDIR\App\DefaultData\DVDXStudio"



6- Pastas de DefaultData

A pasta DVDXStudio para W 7, 8, Vista e XP ENG em DefaultData será só uma normal, mas em Data serão criadas 3 pastas automaticamente, conforme o script. EX. DVDXStudio, DVDXStudio(1), DVDXStudio(2).

Espero que você tenha entendido isso.

7- ---Define Files ---

Voltando ao script, lógo abaixo temos a parte da emulação de arquivos.E no nosso caso temos apenas um localizado em está na pasta C:\WINDOWS\system32

!define LOCALFILE1 "$SYSDIR\sycd5.dll"
!define PORTABLEFILE1 "$EXEDIR\Data\sycd5.dll"
!define DEFAULTPORTABLEFILE1 "$EXEDIR\App\DefaultData\sycd5.dll"

Observe que no script estão especificados os caminhos. Se tivesse mais arquivos, teriamos que acrescentar também no script , tipo: !define LOCALFILE2..., !define LOCALFILE3.. etc..



8- === Other Actions ===

Abaixo de Define Files temos : === Best Compression === | === Includes === e === Set basic information === que não se faz nada pois são informações sobre compressão, plugins, renome e icone do portable .

Function Init

Aqui você tem que colocar as chaves de registro, vamos então preparar a chave e coloca-las aqui.
Abrir a chave: Direito do mouse sobre a primeira chave exportada \ editar (pode ser com o bloco de notas). Veja na imagem abaixo que eu vou deixar apenas a parte que o programa precisa.




Então você salva, e veja na imagem abaixo que todo o resto foi deletado. E ficou só o básico. No caso de programas que utilizam serial no registro, deve-se abrir a outra chave e acrescentar apenas a chave que contem o serial key. Na verdade, este programa também coloca serial no registro, mas como no meu caso eu usei um Path, isso não será necessário. Esta chave servirá apenas para abrir o programa e também vai capturar tudo o que aumentar apartir dela, deixando o registro sempre limpo com backup do registro na pasta Data (que será criada automaticamente) ao fechar o aplicativo.




Antes de colocar no script você ainda tem que converte-la para o formato NSIS.

Botão direito do mouse \ Convert to nsis script. A chave vaificar assim:




Abra a chave já convertida (pode ser com o bloco de notas mesmo) e você deve editar o novo endereço portable. De $PROGRAMFILES para $EXEDIR\App




Vamos aproveitar e limpar um pouco mais tirando chaves repetidas sem informações, copiar e colar no script. Depois disso nós temos que copiar a primeira parte da chave até depois de \Softwares\Prog.... pra colar lá em cima na parte inicial em --- Define RegKeys ---




9- --- Define RegKeys ---

Como você observou na imagem acima copia-se apenas a primeira parte da chave, pois o resto o nsis captura junto com o que você já colocou lá em baixo em === Other Actions === . No meu caso eu tenho apenas duas chaves. Ah! em baixo fica como está, mas em --Define RegKeys --tem que tirar o " (asteristico) e o espaço, e colocar \ (barra esquerda), caso contrário não compila. Veja a imagem abaixo como ficou a parte de cima até aqui:




10- ==== Running ====

Agora vamos continuar lá em baixo depois de === Other Actions === temos esta parte que você só vai mecher se precisar. São, no caso deste script. as quatro partes principais da compilação : Pasta, arquivo, chave e o splash da inicialização. No meu caso, eu não vou fazer nada, pois vou emular tudo. No entanto alguns programas só emulam chaves, outros chaves e pasta , então só tem que deletar a parte que não vai usar.



11- ==== Actions on Registry Keys =====
Depois de ==== Running ==== temos a parte chamada === Run Application que você não faz nada. À seguir chegamos a parte das chaves que você só tem que aumentar ou diminuir. simples assim. No meu caso são duas chaves, mas se tiver mais tem que aumentar aqui, certo? Lembrando que a parte Function RestorePortableKeys e Function BackupPortableKeys não meche. Você só vai aumentar ou diminuir em Function BackupLocalKeys, CreateDirectory "$EXEDIR\Data" e Function RestoreLocalKeys como na imagem abaixo:



12- ==== Actions on Folders =====

Aqui refere-se à pastas e também tem que aumentar ou diminuir. No meu caso eu estou emulando três 3



13- ====Actions on Files =====

Agora é a última parte. que trata dos arquivos e o procedimento é o mesmo. No meu caso eu só estou emulando 1 arquivo. certo?



Parte 3 - Final : Compilar o script e organizar a pasta do portable e desinstalar o programa.

1- Depois que você já preencheu o script : direito do mouse sobre MeuProgPortable.nsi \ Compile NSIS script



2- Se você fez tudo certo, ele vai compilar e vai aparecer a mensagem Finished Sucessfully e você clica em Close pra fechar o compilador do NSIS.



3- Após a compilação o lançador já vai aparecer nesta mesma pasta No meu caso ficou como CloneDVDPortable.exe




4- Agora vamos tirar as tranqueiras que estão na primeira pasta (souces, backup, chaves etc..) e colocar o seu lançador compilado na primeira pasta do portable.




5- Está pronto, mas não posso deixar de mencionar que você deve ir na pasta principal do programa em App\... e deletar arquivos desnecessários. Se você não sabe qual deletar, não mecha, no meu caso eu vou deletar o arquivo desinstalador chamado Unins000.exe, Unins000.dat e mais um outro, chamado PcSetup.exe, que o portable não vai precisar. Na verdade, se estes arquivos ficarem, não tem problema, apenas que o portable ficaria um pouco mais pesado.




6- Agora acabou, mas tem uma ultima coisa que você tem que fazer: Desinstalar o programa por completo com o Total Uninstall. Para isso, basta deixar selecionado o nome da instalação no menu Aplicações Monitoradas e dar um click no botão Desinstalar




7- Vai abrir uma nova janela, você clica Desinstalar e aguarde..




8- Agora sim !! só alegria, é clicar no lançador do portable e o programa abrir para usar.





_________________________________________END______________________________________________

Download Atualizado
CloneDVD Portable + Sources utilizado neste tutorial
Mediafire

CloneDVD Portable.rar (19,6 MB)

Mais.me

CloneDVD Portable.rar (19,6 MB)

Caminhos basicos:
C:\Documents and Settings\User = $PROFILEDados de Aplicativos= $APPDATA
Configurações locais\Dados de aplicativos= $LOCALAPPDATA
Configurações locais\Temp= $TEMP
All Users\Dados de aplicativos=
XP= $%ALLUSERSPROFILE%\DADOSD~1
XP ENG= $%ALLUSERSPROFILE%\APPLIC~1
Win 7 | 8 | Vista= $%HOMEDRIVE%\ProgramData
ou $%HOMEDRIVE%\PROGRA~1
Meus documentos= $DOCUMENTS
Meus documentos\Meus vídeos= $VIDEO
Meus documentos\Minhas músicas= $MUSIC
Meus documentos\Minhas imagens= $PICTURES
C:\Arquivos de programas= $PROGRAMFILES
C:\Arquivos de programas\Arquivos comuns= $COMMONFILES
C:\WINDOWS= $WINDIR
C:\WINDOWS\system32= $SYSDIR
Desktop= $DESKTOP
C:\WINDOWS\Fonts= $FONTS

Baixe NSIS_Constants ou Aqui descompacte e execute NSIS_Constants.exe para conhecer os caminhos ou as variáveis NSIS do seu computador. Este link também está no tópico 4 lá no inicio

Bem Vindos ao meu Blog

Translate

Google-Translate-ChineseGoogle-Translate-Portuguese to FrenchGoogle-Translate-Portuguese to GermanGoogle-Translate-Portuguese to ItalianGoogle-Translate-Portuguese to JapaneseGoogle-Translate-Portuguese to EnglishGoogle-Translate-Portuguese to RussianGoogle-Translate-Portuguese to Spanish

Postagens Populares

Seguidores

- Copyright © Portablegal -Ismael de Jesus- Powered by Blogger - Designed by Ismael -