Para ter trechos opcionais na instalação, basta incluir a página components e definir várias seções:
O resultado é a inclusão de uma nova página após a seleção do diretório:
#
# Segundo exemplo de uso do NSIS
#
LoadLanguageFile "${NSISDIR}\Contrib\Language files\PortugueseBR.nlf"
Name "Calculadora"
OutFile "InstCalc.exe"
InstallDir "$PROGRAMFILES\Calc"
Page directory
Page components
Page instfiles
Section "-Obrigatoria"
SetOutPath $INSTDIR
File "c:\windows\system32\calc.exe"
SectionEnd
Section "Atalho no Menu Iniciar"
CreateShortCut "$SMPROGRAMS\Calculadora.lnk" "$INSTDIR\calc.exe"
SectionEnd
Section "Atalho no Desktop"
CreateShortCut "$DESKTOP\Calculadora.lnk" "$INSTDIR\calc.exe" "" "$INSTDIR\calc.exe" 0
SectionEnd
Neste exemplo, podemos ver também o comando CreateShortCut. Este comando tem a seguinte sintaxe básica:
CreateShortCut arq-lnk destino parametros arquivo-com-icone indice-do-icone
Por exemplo, para criar o atalho no desktop criamos um link chamado Calculadora.lnk no diretório $Desktop apontando para o arquivo Calc.exe no diretório de instalação. O ícone para o atalho é o de índice 0 no arquivo Calc.exe.
Para fechar a "lição" de hoje, vamos ver como acrescentar um desinstalador. O desinstalador no NSIS corresponde a uma SECTION de nome Uninstall. Ele pode ter algumas páginas, definidas por UninstPage. O desinstalador é gerado no momento da instalação, pois precisa se referir ao diretório que o usuário escolheu para a instalação. Isto é feito pelo comando WriteUninstaller. Para desinstalar são úteis os comandos RMDir e Delete.
#
# Terceiro exemplo de uso do NSIS
#
LoadLanguageFile "${NSISDIR}\Contrib\Language files\PortugueseBR.nlf"
Name "Calculadora"
OutFile "InstCalc.exe"
InstallDir "$PROGRAMFILES\Calc"
InstallDirRegKey HKLM "Software\NSIS_Exemplo3" "Install_Dir"
;--------------------------------
; Instalador
Page directory
Page components
Page instfiles
Section "-Obrigatoria"
SetOutPath $INSTDIR
File "c:\windows\system32\calc.exe"
WriteRegStr HKLM SOFTWARE\NSIS_Exemplo3 "Install_Dir" "$INSTDIR"
WriteUninstaller "uninstall.exe"
SectionEnd
Section "Atalhos no Menu Iniciar"
CreateDirectory "$SMPROGRAMS\Exemplo 3"
CreateShortCut "$SMPROGRAMS\Exemplo 3\Calculadora.lnk" "$INSTDIR\calc.exe"
CreateShortCut "$SMPROGRAMS\Exemplo 3\Remove.lnk" "$INSTDIR\uninstall.exe"
SectionEnd
Section "Atalho no Desktop"
CreateShortCut "$DESKTOP\Calculadora.lnk" "$INSTDIR\calc.exe" "" "$INSTDIR\calc.exe" 0
SectionEnd
;--------------------------------
; Desinstalador
UninstPage uninstConfirm
UninstPage instfiles
Section "Uninstall"
Delete "$INSTDIR\*.*"
RMDir "$INSTDIR"
Delete "$SMPROGRAMS\Exemplo 3\*.*"
RMDir "$SMPROGRAMS\Exemplo 3"
Delete "$DESKTOP\Calculadora.lnk"
DeleteRegKey HKLM SOFTWARE\NSIS_Exemplo3
SectionEnd
Neste exemplo, estamos montando uma estrutura mais sofisticada no Menu Iniciar. Além do atalho para executar a calculadore, temos um atalho para executar o desinstalador e ambos ficam dentro de uma pasta. O desinstalador cuida de apagar tudo isto.
Aproveitei para colocar também dois comandos de manipulação do registry: WriteRegStr e DeleteRegKey.
O Windows possui uma série de convenções para anotar no registry o desinstalador, para que ele seja apresentado no Painel de Controle, em Add/Remove Programs. Veremos mais detalhes sobre isto no próximo post.
3 comentários:
Você sabe o comando pra executa automatiamente.
Posta ai mano.
Supondo que o desejado seja colocar o programa no folder Startup do Start Menu, basta fazer algo como
Section "Início Automático"
CreateShortCut "$SMSTARTUP\Calculadora.lnk" "$INSTDIR\Calc.exe" "" "$INSTDIR\Calc.exe" 0
Section End
eu abaixei o jogo devil may cry 3 rip e eu queria que vcs me ensinasem a cria a instalapara ir nesse local C:\Arquivos de programas\Capcom , e tambem que le ja adicionasse um atlho do jogo na area de trabalho tem como vcs me ajudaem
Postar um comentário