Uma ferramenta poderosa e intuitiva para desenvolvedores GeneXus gerenciarem múltiplas instalações e versões de forma organizada e eficiente.
Important
Execução como Administrador: Para garantir que o launcher consiga realizar as operações de limpeza, encerrar processos travados e evitar erros de carregamento de DLLs em pastas temporárias, o aplicativo deve ser executado como Administrador.
O executável gerado já está configurado para solicitar esses privilégios automaticamente (utilizando a flag --uac-admin no PyInstaller).
- Gerenciamento Multi-Instância: Cadastre e organize todas as suas pastas do GeneXus em uma lista única.
- Início Limpo (Clean & Start): Automatiza o processo de limpeza (exclusão de
.gxmodulese execução do/install) antes de abrir a IDE. - Validação de Instâncias: Detecta se existem instâncias de versões diferentes rodando para evitar conflitos de cache e binários.
- Persistência Inteligente: O launcher lembra qual foi a última versão que você utilizou e a deixa pré-selecionada ao abrir o aplicativo.
- Extração Automática de Ícones: Identifica e exibe o ícone original de cada versão do GeneXus na listagem.
- License Manager: Acesso rápido ao gerenciador de licenças de cada instalação específica.
- Prevenção de Duplicidade: Sistema de validação que impede o cadastro duplicado da mesma pasta de instalação.
- Atualização Automática: Sistema de upgrade obrigatório integrado ao GitHub para garantir que todos os usuários estejam sempre na versão mais recente.
- Python 3: Linguagem base do projeto.
- Tkinter/Ttk: Interface gráfica nativa e leve.
- PowerShell Integration: Para detecção precisa de processos e manipulação do sistema Windows.
- Hashlib (MD5): Para identificação única e persistência segura das configurações.
Se você estiver rodando a partir do código fonte:
- Certifique-se de ter o Python instalado.
- Execute o arquivo principal:
python start_Genexus.py
O projeto inclui um script de compilação em PowerShell (compilar.ps1) que utiliza o PyInstaller para gerar um executável único (onefile) com todos os recursos embutidos.
O comando utilizado no script para compilação é:
./compilar.ps1O projeto utiliza GitHub Actions para automatizar o build e a distribuição:
- Gatilho: O build é disparado ao enviar uma tag Git (ex:
v1.25) para o repositório. - Build: O GitHub Actions compila o
.exeusando PyInstaller em um ambiente Windows. - Release: Um arquivo
last_version.zipé gerado e anexado à Release do GitHub. - Distribuição: O aplicativo local detecta a nova versão, baixa o pacote e se auto-atualiza automaticamente.
- v1.37.3: Centralização de todos os códigos de cores hexadecimais em um dicionário unificado (
THEME_COLORS) utilizando constantes semânticas reutilizáveis. Adicionado redimensionamento padrão maior para a tela (1200x650) e desabilitada temporariamente a troca de tema (fixando o tema escuro/dark por padrão). - v1.37.2: Ajuste no intervalo de verificação de atualizações automáticas em segundo plano, rodando a cada 1 hora (3.600.000 ms).
- v1.37.1: Correções e melhorias de renderização nos widgets nativos (rótulos transparentes e bordas pretas nos agrupadores) na aplicação do tema claro e escuro.
- v1.37.0: Implementado suporte a temas Claro e Escuro utilizando a biblioteca
sv_ttk(Sun Valley Theme) com integração visual completa e ícones adaptativos gerados programaticamente. - v1.36.1: Adicionado botão "Abrir Pasta" no painel de ações para abrir diretamente no Windows Explorer o diretório da instalação selecionada.
- v1.36: Correção definitiva do erro de remoção do diretório temporário (
_MEIPASS) do PyInstaller no Windows. Ao iniciar subprocessos (como GeneXus ou License Manager), o ambiente é limpo (removendo_MEIPASSe limpando oPATH) e a diretiva de busca de DLLs (SetDllDirectoryW) é temporariamente redefinida para evitar locks indesejados. - v1.35: Tentativa de correção de travamento no encerramento do processo com
sys.exit(0), atualização do PyInstaller e desativação do UPX. Ignorados scripts de implantação locais no repositório. - v1.34: Ajustes de versão e documentação no histórico do README.
- v1.33: Correção e melhoria do feedback visual do LOADING.
- v1.32: Correção e aprimoramento do feedback visual (LOADING), garantindo visibilidade prioritária e tempo mínimo de exibição para ações rápidas. Estabilização da interface e ícones.
- v1.31: Implementado sistema de Auto-Scan para busca automática de instalações, nova interface visual com ícones coloridos, botão de verificação manual no rodapé e melhorias críticas de estabilidade no processo de upgrade.
- v1.30: Correção nas dependências do CI/CD (Pillow) para suporte a ícones PNG e atualização do fluxo de build.
- v1.29: Implementado sistema de atualização automática via GitHub e build automatizado com GitHub Actions. Adicionado modal de loading com fundo transparente.
- v1.28: Adicionada persistência da última versão selecionada via Hash MD5 e validação de caminhos duplicados.
- v1.27: Implementada reordenação de itens na lista e extração de ícones em tempo de execução.
Desenvolvido por Igor Menin