Este guia ensina o passo a passo completo para lançar uma nova versão do atualizador Softpark.
Siga cada etapa na ordem para garantir que nada seja esquecido.
Git: https://gitlab.tail18e9b.ts.net/softpark-desktop/softparkupdater
O lançamento de uma nova versão envolve duas partes principais:
| Etapa | O que fazer |
|---|---|
Recompilar o Softpark, copiar os arquivos para Resources\SystemFiles e marcar como Embedded Resource |
|
Atualizar o .dacpac, o post_script.sql com a nova versão, e marcar como Embedded Resource |
Ctrl+Shift+B ou menu Build > Rebuild Solution)
Importante: Sempre faça Rebuild (não apenas Build) para garantir que todos os arquivos estejam atualizados.
Softpark\bin\Debug\
.dll, .exe, .pdb, .xml, .config, etc.)SoftparkUpdater\SoftparkUpdater\Resources\SystemFiles\
Dica: Ordene por tipo de arquivo para facilitar a seleção. Lembre-se: apenas arquivos, sem pastas!
Após copiar os arquivos, é necessário garantir que todos estejam marcados como Embedded Resource:
Resources > SystemFilesSystemFiles > Add > Existing Item e selecione os arquivos faltantesF4), altere Build Action para Embedded Resource
Como verificar rapidamente: Voce pode simplesmente selecionar todos os arquivos dessa pasta SystemFiles e clicar com o botão direito > acessar propriedades e selecionar embedded resource, invés de fazer um por um.
Este passo agora é AUTOMÁTICO! O atualizador detecta a versão diretamente do
SoftPark.exeque está na pastaSystemFiles. Não é mais necessário alterar manualmente oAssemblyInfo.csnem opost_script.sql.A versão exibida na interface e a versão gravada no banco são extraídas automaticamente do assembly
SoftPark.exeembarcado nos recursos.Basta copiar o
SoftPark.exeatualizado paraResources\SystemFiles\e o atualizador faz o resto.
.dacpac
SoftparkDatabase.dacpac).dacpac gerado para a pasta do atualizador:SoftparkUpdater\SoftparkUpdater\Resources\SoftparkDatabase.dacpac
SoftparkDatabase.dacpac aparece em ResourcesResources > Add > Existing ItemEmbedded Resourcepost_script.sql
Este passo agora é AUTOMÁTICO! O
post_script.sqlusa placeholders ({VERSION_MAJ},{VERSION_MIN},{VERSION_BUILD},{VERSION_REV}) que são substituídos em tempo de execução pela versão detectada doSoftPark.exe.Não altere os placeholders no
post_script.sql! Eles devem permanecer como estão:EXEC PROC_UPDATE_VERSAO_SOFTPARK @VERSION_MAJ = {VERSION_MAJ}, @VERSION_MIN = {VERSION_MIN}, @VERSION_BUILD = {VERSION_BUILD}, @VERSION_REV = {VERSION_REV};
post_script.sql como Embedded Resourcepost_script.sql está no projeto e com Build Action = Embedded Resourcepre_script.sql — ele normalmente não precisa ser alterado, mas deve estar como Embedded ResourceCtrl+Shift+B)Antes de distribuir, faça um teste em ambiente controlado:
Antes de distribuir a nova versão, confirme todos os itens:
bin\Debug copiados para Resources\SystemFiles (apenas arquivos, sem pastas)AssemblyVersion atualizada no AssemblyInfo.cspost_script.sql.dacpac atualizado em Resources\SoftparkDatabase.dacpacpost_script.sqlpost_script.sql marcado como Embedded Resource| Problema | Causa | Solução |
|---|---|---|
| Arquivo não é extraído no cliente | Build Action não está como Embedded Resource |
Verificar Properties do arquivo no VS |
| Versão não atualiza no banco | post_script.sql não foi editado |
Editar a linha PROC_UPDATE_VERSAO_SOFTPARK |
| Dacpac falha ao aplicar | Dacpac desatualizado ou corrompido | Recompilar o projeto de banco e copiar novamente. Lembre-se de verificar se o banco "BASE" está atualizado |
| Arquivos antigos no cliente | Fez Build ao invés de Rebuild | Sempre usar Rebuild Solution |
| Subpastas copiadas por engano | Copiou a pasta inteira do Debug | Copiar apenas os arquivos, nunca as subpastas |
| Versão do Assembly divergente | AssemblyInfo.cs e post_script.sql com versões diferentes |
Garantir que ambos tenham a mesma versão |
SoftparkUpdater/
|-- SoftparkUpdater/
|-- Properties/
| |-- AssemblyInfo.cs <-- Versao do Assembly (VERSAO AQUI)
|-- Resources/
|-- SoftparkDatabase.dacpac <-- Arquivo do banco (dacpac)
|-- post_script.sql <-- Script pos-atualizacao (VERSAO AQUI)
|-- pre_script.sql <-- Script pre-atualizacao
|-- SystemFiles/ <-- Arquivos compilados do SoftparkIR
| |-- SoftPark.exe
| |-- SoftPark.pdb
| |-- *.dll
| |-- ...
|-- DLLs/
| |-- DLL_SITEF/ <-- DLLs do SiTef (override de producao)
|-- Runtimes/
|-- WebView2Loader.dll <-- Runtime WebView2
Pronto! Seguindo esse guia, a nova versão do atualizador estará pronta para distribuição.
Em caso de dúvidas, procure a equipe de desenvolvimento.