Aba System — A Ponte Estrutural com o Windows
Se a aba Dialogs é a ponte visual com o Windows, a aba System é a ponte invisível e estrutural com o sistema operacional. Aqui você controla processos paralelos, comunicação entre programas, serviços do Windows e muito mais — sem uma única janela aparecendo para o usuário.
-
- TProcess e TProcessUTF8 — Executar programas externos
- TAsyncProcess — Executar em segundo plano sem travar a tela
- TTimer — Tarefas periódicas
- TIdleTimer — Bloqueio por inatividade
- TSimpleIPCClient e TSimpleIPCServer — Comunicação entre processos
- TServiceManager — Controlar serviços do Windows
- TEventLog — Logs no Visualizador de Eventos
TProcess e TProcessUTF8 — Executar Programas Externos
-
Esqueça as antigas funções
WinExecouShellExecuteda API do Windows. Estes componentes são a forma moderna, segura e multiplataforma de executar programas externos.Você os usa para chamar um atualizador do sistema (
update.exe), rodar um script de backup do Firebird (gbak.exeoculto) ou abrir o leitor de PDF após o Fortes Report gerar um arquivo.Dica importante: Use sempre o TProcessUTF8, pois ele lida perfeitamente com caminhos de rede e pastas que contenham acentuação (ex:
C:\Notas Fiscais\).Comparação com o Firebird: O
gbak.exeque você chama com o TProcess é o mesmo que você rodaria no terminal do Linux no servidor de produção. A diferença é que o TProcess te dá controle sobre isso dentro do seu sistema Pascal.
TAsyncProcess — Processo Assíncrono sem Travar a Tela
-
É o irmão mais novo do
TProcess. Foi desenhado para rodar ferramentas de linha de comando que demoram muito, sem "congelar" a tela do seu ERP. Ele possui eventos comoOnReadData, que permite capturar o texto que o programa externo está cuspindo no console (stdout) e jogar em umTMemoem tempo real.
TTimer — Tarefas Periódicas
-
Executa uma rotina repetidamente a cada X milissegundos. Útil para dar um refresh automático em um painel de "Pedidos Pendentes" na tela do cozinheiro em um sistema de restaurante, ou para consultar o status de serviço da Sefaz de tempos em tempos.
Atenção com o Timer: O evento
OnTimerroda na thread principal (UI thread). Se o que você executa for pesado (uma query grande no Firebird), a tela vai travar durante a execução. Para consultas pesadas, useTAsyncProcessou threads.
TIdleTimer — Bloqueio por Inatividade
-
Ao contrário do Timer normal, ele só dispara se o usuário não estiver mexendo no mouse ou teclado. É o componente ideal para duas situações clássicas:
Cenário 1 — Segurança: Se o caixa do PDV ficar 5 minutos sem tocar no computador, o
TIdleTimerdispara e bloqueia a tela, exigindo a senha novamente. Evita que outra pessoa acesse o sistema enquanto o operador está atendendo um cliente no balcão.Cenário 2 — Performance: Rodar uma rotina pesada de limpeza de arquivos temporários do ACBr apenas quando o sistema estiver ocioso, para não causar lentidão enquanto o usuário digita uma nota.
TSimpleIPCClient e TSimpleIPCServer — Comunicação entre Processos
-
Permitem que dois executáveis diferentes conversem entre si na mesma máquina, enviando mensagens de texto de forma incrivelmente rápida e sem usar portas de rede (TCP/IP) — o que evita bloqueios chatos do Firewall do Windows.
Cenário Clássico: Você tem o PDV rodando na frente e um "Monitor de Impressão" rodando escondido perto do relógio do Windows. O PDV usa o Client para enviar uma string
IMPRIMIR_PEDIDO_55e o Server no Monitor recebe instantaneamente e manda para a impressora. Isso evita que o PDV trave se a impressora der erro de papel.
TServiceManager — Controlar Serviços do Windows
-
Permite que o seu sistema controle os Serviços do Windows (aqueles que você vê no
services.msc). Em uma tela de configurações do seu ERP, você pode usar isso para verificar se o serviço do Firebird está rodando, e até dar um comando deStartouStopnele diretamente pelo seu sistema.
TEventLog — Logs no Visualizador de Eventos do Windows
-
Em vez de salvar logs de erros críticos em um arquivo
.txtque o usuário pode apagar sem querer, este componente grava os erros diretamente no Visualizador de Eventos do Windows (Event Viewer). Fica extremamente profissional e centralizado para um suporte de TI avançado analisar depois.Comparação com um arquivo TXT: O arquivo de log pode ser apagado pelo usuário, ficar corrompido se o sistema travar no meio da escrita, e não tem ordenação garantida. O Event Viewer do Windows é atômico, protegido e consultável via ferramentas profissionais de monitoramento como o Zabbix ou SCOM.