processo executado em duplicidade: libc.system

23/09/2005

2

Estou com um problema sério utilizando libc.system. O Comando é executado duas vezes pela aplicacão. No caso, envia um relatório para uma determinada impressora. O Job chega duas vezes ao destino. Vejam se há algo errado na rotina:

if (gravados mod 4500) = 0 then // 4500 boletos por arquivo
begin
closefile(arqdestino);
comando := ´lp -d´+impressora+´ ´+nomearquivo;
connectcommand := Pchar( comando + ´&´);
libc.system( connectcommand );
iderror := libc.system( connectcommand );
if iderror = -1 then
begin
showmessage(´erro: nao enviou spool para impressora´);
end;
.
.
.
.


Responder

Posts

23/09/2005

Dopi

Ola Carlos,

connectcommand := Pchar( comando + ´&´); libc.system( connectcommand ); iderror := libc.system( connectcommand ); if iderror = -1 then .


De acordo com o código acima, vc ESTÁ chamando ´libc.system´ 2x... deixe apenas a ultima chamada...


Responder
Obrigado, Daniel,

Fiz o teste aqui assim que recebi a resposta, passou!

Todo um processo de migracão de código/aplicacões dependia disso, meu fim de semana vai ser bem melhor agora...
valeu mesmo!

carlos henrique


Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar