programa sem form
Estou precisando abrir um programa. Mas que não use form.
A aplicação não precisa fazer nada. Apenas abrir.
Não sei se explicando direito o que preciso mas preciso fazer um project sem usar form nenhum, para que quando mande executar não abra nada tela, mas que eu possa localizar com
FindWindow(nil, ´Project´).
Como faço isso?
A aplicação não precisa fazer nada. Apenas abrir.
Não sei se explicando direito o que preciso mas preciso fazer um project sem usar form nenhum, para que quando mande executar não abra nada tela, mas que eu possa localizar com
FindWindow(nil, ´Project´).
Como faço isso?
Michele
Curtidas 0
Respostas
Marconi
10/12/2003
Se voce deixar a propriedade do form Visible:= false, acho que vai funcioanar.
Marconi
Marconi
GOSTEI 0
Tnaires
10/12/2003
Olá michele, tudo bem?
Vá no menu Project, clique em View Source. Agora, retire a instrução Application.Create para o form principal. Aí vc usa essa unit pra escrever seu programa. Mas vc vai ter q importar as units q vc precisar manualmente (exemplo, se vc precisar utilizar ShowMessage, tem q colocar Dialogs na cláusula uses).
Sucesso
Vá no menu Project, clique em View Source. Agora, retire a instrução Application.Create para o form principal. Aí vc usa essa unit pra escrever seu programa. Mas vc vai ter q importar as units q vc precisar manualmente (exemplo, se vc precisar utilizar ShowMessage, tem q colocar Dialogs na cláusula uses).
Sucesso
GOSTEI 0
Lucas Silva
10/12/2003
não seria melhor você fazer um programa ao invés de uma aplicação???
Lucas!
Lucas!
GOSTEI 0
Tnaires
10/12/2003
Mas uma aplicação console mostra uma tela de prompt de comando...
GOSTEI 0
Edmarfonseca
10/12/2003
altere a propriedade do form principal BorderStyle para bsNone e no evento OnCreate do mesmo form coloque duas linhas:
Width := -1;
Height := -1;
não sei se é a melhor forma mas resolve
abraços
Width := -1;
Height := -1;
não sei se é a melhor forma mas resolve
abraços
GOSTEI 0
Marcelo Saviski
10/12/2003
crie um novo projeto
clique em: [img:67ecc15bb8]http://www.camaradabacana.kit.net/img/B.gif[/img:67ecc15bb8]
remova a Unit1
vai em Project> View Source
detete a Unit Forms do uses e cooque apenas a Windows
detete tudo entre o begin e o end.
coloque o WinExec(...) entre o Begin e o end, compile e teste,
PS: de uma olhada no tamanho do .exe :wink:[/img]
clique em: [img:67ecc15bb8]http://www.camaradabacana.kit.net/img/B.gif[/img:67ecc15bb8]
remova a Unit1
vai em Project> View Source
detete a Unit Forms do uses e cooque apenas a Windows
detete tudo entre o begin e o end.
coloque o WinExec(...) entre o Begin e o end, compile e teste,
PS: de uma olhada no tamanho do .exe :wink:[/img]
GOSTEI 0
Lucas Silva
10/12/2003
[quote:112b2a2496=´Marcelo Saviski´]crie um novo projeto
temujm ´-´ vermelho, clique e remova a Unit1
vai em Project> View Source
detete a Unit Forms do uses e cooque apenas a Windows
detete tudo entre o begin e o end.
coloque o WinExec(...) entre o Begin e o end, compile e teste,
PS: de uma olhada no tamanho do .exe :wink:[/quote:112b2a2496]
É bem melhor fazer um PROGRAMA ao ives de uma aplicação neste caso!
Lucas!
temujm ´-´ vermelho, clique e remova a Unit1
vai em Project> View Source
detete a Unit Forms do uses e cooque apenas a Windows
detete tudo entre o begin e o end.
coloque o WinExec(...) entre o Begin e o end, compile e teste,
PS: de uma olhada no tamanho do .exe :wink:[/quote:112b2a2496]
É bem melhor fazer um PROGRAMA ao ives de uma aplicação neste caso!
Lucas!
GOSTEI 0
Tnaires
10/12/2003
Olá Lucas
Vc tem razão. Mas se vc estiver falando de uma aplicação console (Menu File - New - Other... - Console Application), qdo rodar aparece uma tela de comando (´tela preta´). Mas isso pode ser resolvido retirando-se a diretiva de compilação {$APPTYPE CONSOLE} (algo parecido com isso).
Sucesso
Vc tem razão. Mas se vc estiver falando de uma aplicação console (Menu File - New - Other... - Console Application), qdo rodar aparece uma tela de comando (´tela preta´). Mas isso pode ser resolvido retirando-se a diretiva de compilação {$APPTYPE CONSOLE} (algo parecido com isso).
Sucesso
GOSTEI 0
Marcelo Saviski
10/12/2003
fiz um equivoco aqui:
para poder localizar depois, você precisa registrar uma classe com o Register Class, criar um loop com while GetMessage(...) do ;
e depois um UnregisterClass ou um PostQuitMessage
para poder localizar depois, você precisa registrar uma classe com o Register Class, criar um loop com while GetMessage(...) do ;
e depois um UnregisterClass ou um PostQuitMessage
GOSTEI 0
Marcelo Saviski
10/12/2003
Olá Lucas
Vc tem razão. Mas se vc estiver falando de uma aplicação console (Menu File - New - Other... - Console Application), qdo rodar aparece uma tela de comando (´tela preta´). Mas isso pode ser resolvido retirando-se a diretiva de compilação {$APPTYPE CONSOLE} (algo parecido com isso).
Sucesso
se você tirar a diretiva, vai virar uma Aplicação GUI sem janelas, fazendo de qualquer um dos modos, o resultado vai ser o mesmo
GOSTEI 0
Tnaires
10/12/2003
Olá Marcelo
É impressionante como há várias maneiras de resolver um mesmo problema não? Qdo vi sua mensagem, reli todo o tópico... A michelle não vai ter do q reclamar d soluções... :lol:
Sucesso a todos
É impressionante como há várias maneiras de resolver um mesmo problema não? Qdo vi sua mensagem, reli todo o tópico... A michelle não vai ter do q reclamar d soluções... :lol:
Sucesso a todos
GOSTEI 0
Michele
10/12/2003
Agradeço a todos, funcionou!
O que eu estava precisando na verdade e não estava conseguindo era fechar um programa por acesso remoto, mas este programa tinha o seguinte comando no Onclose --- Action:=Canone;
Então achei uma solução meio esquisita, mas funcionou.
Antes de mandar fechar o tal programa eu mando abrir este sem o form e o outro programa que preciso fechar, só fecha se este sem o form estiver aberto.
Sei que não é uma solução muito convencional, já que não consegui com o comando que fecha um programa.
Mais uma vez agradeço a ajuda de todos e lendo os tópicos confesso que surgiu uma dúvida, não entendi a diferença entre programa e aplicação.
O que eu estava precisando na verdade e não estava conseguindo era fechar um programa por acesso remoto, mas este programa tinha o seguinte comando no Onclose --- Action:=Canone;
Então achei uma solução meio esquisita, mas funcionou.
Antes de mandar fechar o tal programa eu mando abrir este sem o form e o outro programa que preciso fechar, só fecha se este sem o form estiver aberto.
Sei que não é uma solução muito convencional, já que não consegui com o comando que fecha um programa.
Mais uma vez agradeço a ajuda de todos e lendo os tópicos confesso que surgiu uma dúvida, não entendi a diferença entre programa e aplicação.
GOSTEI 0
Moonlight
10/12/2003
Uma vez q eu precisei disso, fiz uma gambiarra pra sair mais rápido..
no OnCreate, coloquei uma funcao que chamava todas as funcoes q precisavam ser executadas...
E depois dessa função.. Application.Terminate.
Não mostrou Form nenhum.
Não é o ideal, mas eu precisava de solução rápida.
no OnCreate, coloquei uma funcao que chamava todas as funcoes q precisavam ser executadas...
E depois dessa função.. Application.Terminate.
Não mostrou Form nenhum.
Não é o ideal, mas eu precisava de solução rápida.
GOSTEI 0
Tnaires
10/12/2003
Olá michelle
Na prática, diferença entre programa e aplicação não existe. Mas analisando o Delphi, podemos dizer q aplicação é um tipo de programa. Acho q esse termo surgiu qdo os programas começaram a ter muitos módulos, com vários arquivos integrados (units, bancos de dados, etc).
Sucesso
Na prática, diferença entre programa e aplicação não existe. Mas analisando o Delphi, podemos dizer q aplicação é um tipo de programa. Acho q esse termo surgiu qdo os programas começaram a ter muitos módulos, com vários arquivos integrados (units, bancos de dados, etc).
Sucesso
GOSTEI 0
Caninha51
10/12/2003
Tenta isso no oncreate!
Application.ShowMainForm := False;
Application.ShowMainForm := False;
GOSTEI 0