sr.silva 1 Denunciar post Postado Março 20, 2006 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
LODVini 0 Denunciar post Postado Março 20, 2006 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
sr.silva 1 Denunciar post Postado Março 20, 2006 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
LODVini 0 Denunciar post Postado Março 20, 2006 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
sr.silva 1 Denunciar post Postado Março 20, 2006 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
LODVini 0 Denunciar post Postado Março 20, 2006 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
sr.silva 1 Denunciar post Postado Março 20, 2006 Como faco para que nao aparece nenhuma mensagem de alerta... Compartilhar este post Link para o post Compartilhar em outros sites
lenn0n 0 Denunciar post Postado Março 21, 2006 é 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
AleVidaBoa 0 Denunciar post Postado Março 21, 2006 A e pessoal gostei da ideia ae viu maneira essa forma de trabalhar chamando a calculadora do windos vaue mesmo eu a usei!!!!! Compartilhar este post Link para o post Compartilhar em outros sites
LODVini 0 Denunciar post Postado Março 21, 2006 http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites