GARANTIR DESCONTO

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


Mysys

Mysys

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.

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

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

Aceitar