processo executado em duplicidade: libc.system

23/09/2005

0

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;
.
.
.
.


Carlos_henrique

Carlos_henrique

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

23/09/2005

Carlos_henrique

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

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar