Fórum CopyFile em CLX #205779
12/01/2004
0
no delphi eu usava
Memo.Lines.SaveToFile(´\Imprimir.txt´);
CopyFile(´\Imprimir.txt´,PChar(\\servidor\impressora),False);
so que em CLX quando manda copilar ele nao reconheco o comando CopyFile
eu gravo como arquivo texto e depois copio pra LPT1 ou pra algum endereco na rede com outra impressora instalada
alguma sugestao....?
Memo.Lines.SaveToFile(´\Imprimir.txt´);
CopyFile(´\Imprimir.txt´,PChar(\\servidor\impressora),False);
so que em CLX quando manda copilar ele nao reconheco o comando CopyFile
eu gravo como arquivo texto e depois copio pra LPT1 ou pra algum endereco na rede com outra impressora instalada
alguma sugestao....?
Mysys
Curtir tópico
+ 0
Responder
Posts
12/01/2004
Maicongabriel
Você deve utilizar outra função para fazer a cópia dos arquivos, pois [b:0b36c9d529][i:0b36c9d529]CopyFile[/i:0b36c9d529][/b:0b36c9d529] é uma função da API do Windows.
Aqui tem 2 Exemplos ! Nenhum testado.
Aqui tem 2 Exemplos ! Nenhum testado.
function FileCopy(source,dest: String): Boolean;
{copia um arquivo de um lugar para outro. Retornando falso em caso de erro}
var
fSrc,fDst,len: Integer;
size: Longint;
buffer: packed array [0..2047] of Byte;
begin
if source <> dest then
begin
fSrc := FileOpen(source,fmOpenRead);
if fSrc >= 0 then
begin
size := FileSeek(fSrc,0,2);
FileSeek(fSrc,0,0);
fDst := FileCreate(dest);
if fDst >= 0 then
begin
while size > 0 do
begin
len := FileRead(fSrc,buffer,sizeof(buffer));
FileWrite(fDst,buffer,len);
size := size - len;
end;
FileSetDate(fDst,FileGetDate(fSrc));
FileClose(fDst);
FileSetAttr(dest,FileGetAttr(source));
Result := True;
end
else
begin
Result := False;
end;
FileClose(fSrc);
end;
end;
end;Procedure CopyFile( Const sourcefilename, targetfilename: String );
{Copia um arquivo de um lugar para outro}
Var
S, T: TFileStream;
Begin
S := TFileStream.Create( sourcefilename, fmOpenRead );
try
T := TFileStream.Create( targetfilename, fmOpenWrite or fmCreate );
try
T.CopyFrom(S, S.Size ) ;
finally
T.Free;
end;
finally
S.Free;
end;
end;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)