Comando WinExec deixou de funcionar !!! AJUDE-ME
Olá, pessoal.
utilizo o comando WinExec para enviar msg de uma máquina para outra na mesma rede NT. Porém, parou de funcionar em algumas máquinas sem razão aparente, não houve reinstalação ou atualização.
O comando ´net send´ do Windows funciona normalmente, via ´Run...´, mas via Delphi, não está executando e também não gera msg de erro.
Conto com a ajuda de vcs.
procedure TForm1.Button1Click(Sender: TObject);
var
arq :TextFile;
begin
AssignFile ( arq, ´C:\MSG.BAT´ );
Rewrite ( arq );
Writeln ( arq, ´net send ´ + edit1.text +´ ´TESTE´´ );
CloseFile ( arq );
Winexec(´C:\MSG.BAT´, SW_HIDE);
end;
utilizo o comando WinExec para enviar msg de uma máquina para outra na mesma rede NT. Porém, parou de funcionar em algumas máquinas sem razão aparente, não houve reinstalação ou atualização.
O comando ´net send´ do Windows funciona normalmente, via ´Run...´, mas via Delphi, não está executando e também não gera msg de erro.
Conto com a ajuda de vcs.
procedure TForm1.Button1Click(Sender: TObject);
var
arq :TextFile;
begin
AssignFile ( arq, ´C:\MSG.BAT´ );
Rewrite ( arq );
Writeln ( arq, ´net send ´ + edit1.text +´ ´TESTE´´ );
CloseFile ( arq );
Winexec(´C:\MSG.BAT´, SW_HIDE);
end;
Falinden
Curtidas 0
Respostas
Edich
05/05/2003
Nao conheço o comando net send, mas como é um comando do MSDOS pode ser que de certo...
em vez de usar o Winexec assim:
Winexec(´C:\MSG.BAT´, SW_HIDE);
tente assim:
WinExec(PChar(´command.com /c c:\msg.bat´),sw_hide);
Tomara que funcione
em vez de usar o Winexec assim:
Winexec(´C:\MSG.BAT´, SW_HIDE);
tente assim:
WinExec(PChar(´command.com /c c:\msg.bat´),sw_hide);
Tomara que funcione
GOSTEI 0
Falinden
05/05/2003
Valeu, edich, mas não resolveu.
GOSTEI 0
Edich
05/05/2003
Entao no sw_hide, use o sw_shownormal, provavelmente o MS DOS está gerando algum erro, como o comando hide nao mostra a tela use o normal para visualiza-la, talvez assim voce consiga ver o erro gerado pelo Ms Dos, já que provavelmente o erro está ali...
Se eu puder ajudar estamos aí...
Se eu puder ajudar estamos aí...
GOSTEI 0
Falinden
05/05/2003
Edi Carlos,
eu fiz o que vc sugeriu, porém o comando roda tão rápido que não dá tempo de ver a msg que aparece na tela de Comand Prompt.
Como se trata de uma máquina cliente, não tem o Delphi instalado, para então executar passo a passo.
Vc saberia como capturar a tela ?
Valeu,
Fabiana
eu fiz o que vc sugeriu, porém o comando roda tão rápido que não dá tempo de ver a msg que aparece na tela de Comand Prompt.
Como se trata de uma máquina cliente, não tem o Delphi instalado, para então executar passo a passo.
Vc saberia como capturar a tela ?
Valeu,
Fabiana
GOSTEI 0
Soulless
05/05/2003
Coloca um [b:926e5021f4]pause[/b:926e5021f4] no final do arquivo q vai ser executado.
Ai a tela fica parada até que seja presssionado alguma coisa.
Ai a tela fica parada até que seja presssionado alguma coisa.
GOSTEI 0
Falinden
05/05/2003
Coloca um [b:dbf9dbc78f]pause[/b:dbf9dbc78f] no final do arquivo q vai ser executado.
Ai a tela fica parada até que seja presssionado alguma coisa.
Valeu a dica, Soulless.
Quando rodo na minha máq., beleza, mas mesmo com o pause, a tela não pára na máquina cliente. Desta forma, não consigui ainda ver erro algum.
Help me !!!
GOSTEI 0
Edich
05/05/2003
tenta executar o arquivo .bat no prompt do ms dos, sem sua aplicação..
blza
qualquer coisa me manda um e-mail
edich@ig.com.br
blza
qualquer coisa me manda um e-mail
edich@ig.com.br
GOSTEI 0