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;
.
.
.
.
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
Curtir tópico
+ 0
Responder
Posts
23/09/2005
Dopi
Ola Carlos,
De acordo com o código acima, vc ESTÁ chamando ´libc.system´ 2x... deixe apenas a ultima chamada...
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
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
Clique aqui para fazer login e interagir na Comunidade :)