68 lines
1.5 KiB
Markdown
68 lines
1.5 KiB
Markdown
|
|
# Como Resolver Problemas ao Gerar MSI
|
||
|
|
|
||
|
|
## Diagnóstico Rápido
|
||
|
|
|
||
|
|
Execute no PowerShell ou CMD:
|
||
|
|
|
||
|
|
```powershell
|
||
|
|
# Verificar se WiX está instalado
|
||
|
|
where candle.exe
|
||
|
|
where light.exe
|
||
|
|
|
||
|
|
# Se não aparecer nada, o WiX não está no PATH
|
||
|
|
```
|
||
|
|
|
||
|
|
## Soluções
|
||
|
|
|
||
|
|
### Problema 1: "candle.exe não encontrado"
|
||
|
|
|
||
|
|
**Solução A - Adicionar ao PATH:**
|
||
|
|
1. Abra "Variáveis de Ambiente"
|
||
|
|
2. Edite "Path" do sistema
|
||
|
|
3. Adicione: `C:\Program Files (x86)\WiX Toolset v3.11\bin`
|
||
|
|
4. Reinicie o terminal
|
||
|
|
|
||
|
|
**Solução B - Usar caminho completo:**
|
||
|
|
```cmd
|
||
|
|
"C:\Program Files (x86)\WiX Toolset v3.11\bin\candle.exe" NoIdle.wxs
|
||
|
|
"C:\Program Files (x86)\WiX Toolset v3.11\bin\light.exe" NoIdle.wixobj -ext WixUIExtension
|
||
|
|
```
|
||
|
|
|
||
|
|
### Problema 2: Erro ao compilar .wxs
|
||
|
|
|
||
|
|
**Verifique:**
|
||
|
|
- O arquivo `NoIdle.exe` está na mesma pasta?
|
||
|
|
- O nome do arquivo no `.wxs` está correto?
|
||
|
|
- Não há erros de sintaxe no XML?
|
||
|
|
|
||
|
|
**Teste:**
|
||
|
|
```cmd
|
||
|
|
candle.exe -nologo -v NoIdle.wxs
|
||
|
|
```
|
||
|
|
|
||
|
|
### Problema 3: Erro ao linkar
|
||
|
|
|
||
|
|
**Use a extensão correta:**
|
||
|
|
```cmd
|
||
|
|
light.exe NoIdle.wixobj -ext WixUIExtension -out NoIdle.msi
|
||
|
|
```
|
||
|
|
|
||
|
|
## Alternativa: Use Inno Setup
|
||
|
|
|
||
|
|
Se o WiX continuar dando problema, use o Inno Setup:
|
||
|
|
|
||
|
|
1. Baixe: https://jrsoftware.org/isdl.php
|
||
|
|
2. Abra `CRIAR_INSTALADOR_INNO.iss`
|
||
|
|
3. Compile (Build > Compile)
|
||
|
|
4. Pronto! Gera `NoIdle-Setup.exe`
|
||
|
|
|
||
|
|
O JumpCloud aceita `.exe` também!
|
||
|
|
|
||
|
|
## Alternativa: Script PowerShell
|
||
|
|
|
||
|
|
Use o `INSTALADOR_POWERSHELL.ps1`:
|
||
|
|
- Não precisa de WiX
|
||
|
|
- Instala diretamente
|
||
|
|
- Pode ser usado no JumpCloud com PowerShell
|
||
|
|
|