Executar arquivo .bat ou comando DOS

Delphi

24/03/2005

Olá pessoal,

Eu sei que muitos devem pensar que nao usei a ´busca´ no forum mas eu digo que usei e nao consegui resolver meu problema, apesar de existir muitos topicos relacionados a esse! Procurei tambem pela internet e ainda nao consegui encontrar nada a respeito...

Problema:

Tenho 1 linha de comando (DOS) bem grande (aprox. 600 carac.) e gostaria de executa-la via delphi. Acontece que todos os jeitos que econtrei de fazer isso, a string ´comando´ das funcoes nao recebem mais que 255 carac. obviamente.
Entao pensei em fazer 1 arquivo .bat com essa linha de codigo e executar (SHAZAM). Acontece que após executar o arquivo .bat, a janela concluído fica aparecendo. Voce deve estar pensando, é so mudar o parametro da exibicao para HIDE.
Ja fiz isso e ao menos no meu SO (win98) quando executo o arquivo .bat ´escondido´ ele fica nas ´tasks´ do windows como WINOLDAP e isso vai consumindo memoria (sim, o .bat é executado periodicamente muitas vezes) e chega a um ponto de travar a máquina.

Procurando pela internet vi a recomendação da microsoft de usar arquivo .PIF (atalhos.. eu ACHO). Fiz isso e quando executo clicando nele, funciona do jeito que eu quero, porem, nao consigo executar esse ´atalho´ via delphi.

Enfim:

Existe a possibilidade de executar um comando DOS (nao importando o tamanho...) via delphi??
Se não, tem como executar um .bat e ´forçar´ seu fechamento??
Alguem sabe como executo arquivo .pif??


OBS: winexec, shellexecute, execandwait, e derivados ja tentei dezenas de variações...

Se alguem tiver 1 luz... me ajude por favor!


Pablobr

Pablobr

Curtidas 0

Respostas

Sanses

Sanses

24/03/2005

olá

voce já tentou assim?
ShellExecute(Application.handle,nil,pchar(´C:\atalho\atalho.lnk,nil,´C:\atalho´,SW_SHOW);

Sanses


GOSTEI 0
POSTAR