Problema com Shellexecute no Windows 64

Delphi

18/07/2013

Pessoal estou tendo problemas para executar arquivos Bats no windows 7 64 bits, O aplicativo executa alguns arquivo bats para executar alguns processamentos para isso utilizo shellexecute. Atualmente utilizo no windows 32 bits e funciona normalmente mas agora será necessário instalar em outra máquina e esta máquina é windows 64 bits. Alguém já passou por isso e tem uma solução ? A aplicação foi desenvolvida em delphi 2007. Desde já agradeço a ajuda.
Gustavo Bernardino

Gustavo Bernardino

Curtidas 0

Respostas

Joel Rodrigues

Joel Rodrigues

18/07/2013

Opa, quais problemas exatamente?
GOSTEI 0
Gustavo Bernardino

Gustavo Bernardino

18/07/2013

Opa! Desculpas Joel, simplesmente não executa o Shellexecute também já tentei utilizar o winexec e nada.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

18/07/2013

Outras aplicações, um exe, por exemplo, abrem normalmente? O problema está só com os .bat?
GOSTEI 0
Gustavo Bernardino

Gustavo Bernardino

18/07/2013

Joel eu não tentei outros arquivos posso dar uma olhada mas nesta aplicação somente utilizo bats da seguinte forma

  ShellExecute(0, nil, 'cmd.exe /c ', Pchar(wPath ), nil, SW_HIDE);



E no windows 64 não executa.
GOSTEI 0
Alessandro Yamasaki

Alessandro Yamasaki

18/07/2013

GOSTEI 0
Gustavo Bernardino

Gustavo Bernardino

18/07/2013

Pessoal,

Consegui, percebi que no Windows 64 a estrutura de diretórios é diferente e lendo o help verifiquei que esta colocando os parâmetros como uma string só dentro do Pansichar, mas na verdade a colocação dos parâmetros deveriam ser assim :



  ShellExecute(0,nil,'cmd.exe', ' /c  executar.bat',Pchar(wpath),SW_SHOW);


e não assim


  ShellExecute(0, nil, 'cmd.exe /c ', Pchar(wPath ), nil, SW_SHOWNORMAL);


então consegui.

De qualquer forma obrigado pela força cara, valeu mesmo
GOSTEI 0
Deivison Melo

Deivison Melo

18/07/2013

Finalizando tópico!

Obrigado a todos!

Emanoel Deivison
Recife - PE
GOSTEI 0
POSTAR