Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sr.silva

Chamar calculadora do Windows

Recommended Posts

Olá!!Qual o procedimento que uso para chamar a calculadora do Windows.Seja qual for a versão do S.O!!Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia...

 

uma forma seria utilizar o WinExec...

procedure TForm1.Button1Click(Sender: TObject);begin		  if WinExec('Calc.exe', SW_SHOWNORMAL) < 31 then		ShowMessage('Ocorreu um erro!');end;

o primeiro parâmetro é o comando a ser executado(ex.: 'Explorer.exe');

o segundo parâmetro é como vai ser aberto(ex.: Minimizado = SW_MINIMIZE)

se retornar um número menor que 31, ocorreu um erro :D

 

se não for isso exatamente que você procura.. avise :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Show de bola cara..Era isso realmente que estava precisando!!!Valew mesmo.Agora so uma duvida, o que essa condica de erro MAIOR que 31?por que 31???

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa condição é MENOR... pq essa função WinExec retorna um número, se funcionar, maior que 31... somente adicionei o teste para mostrar, por exemplo se ocorreu um erro(ex.: WinExec('blabla.exe',SW_SHOWNORMAL); // isso não existe, então o winexec não encontra o arquivo e gera o erro ERROR_FILE_NOT_FOUND), pq se não adicionar essa condição não acontece nada

// aqui mostra a mensagem de erro pq nao encontrou o arquivoif WinExec('blabla.exe', SW_SHOWNORMAL) < 31 then   ShowMessage('Erro');// aqui não faz nadaWinExec('blabla.exe', SW_SHOWNORMAL);

não sei se tu intendeu minha explicação, acho que me atrapalhei um pouco :D, mas qlqr coisa posta a duvida ai..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gostaria de saber como faco para chamar a calculadora somente um VEZ e definir o local onde ela devera aparecer.Tipo a minha ideia seria na frente do Aplicativo estila( ShowModal ) e centralizado na tela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode ser feito da seguinte forma:

 

procedure TForm1.Button1Click(Sender: TObject);begin	 if FindWindow(nil, 'Calculadora') = 0 then		WinExec('Calc.exe', SW_SHOWNORMAL)	 else		ShowMessage('Calculadora já esta aberta');end;
o FindWindow retorna o número da janela passada como parâmetro... se não encontrar retorna 0. Se encontrar a calculadora é pq ela está aberta... entao pode avisar o usuario ou não fazer nada...

qlqr duvida posta ai..

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só tirar o else....

mantenha somente o código

 

if FindWindow(nil, 'Calculadora') = 0 then		WinExec('Calc.exe', SW_SHOWNORMAL)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.