boa noite,

estou começando em delphi e o assunto é um editor de textos tudo 
funfava qd comecei a implementar o sitema de impressão, e deparei com 
uns erros:
[Error] Unit1.pas(114): Undeclared identifier: 'AssignPrn'

o cod da unit 
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, 
Forms,
  Dialogs, StdCtrls, Buttons;

type
  TForm1 = class(TForm)
    AbreArquivo: TOpenDialog;
    SalvaArquivo: TSaveDialog;
    Memo1: TMemo;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    PrinterSetupDialog1: TPrinterSetupDialog;
    PrintDialog1: TPrintDialog;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn8Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
var
  dado : textfile; //armazena o texto
  carac : char; //representara caractere a caractere
begin
  //Filtro aplicado ao opendialog1 chamado AbreArquivo
  AbreArquivo.Filter := 'Arquivos de Texto(*.txt)|*.tx´';
  if AbreArquivo.Execute then
  begin
    //Associa o arq à variável dado
    AssignFile(dado, AbreArquivo.FileName);
    //Posiciona o cursor na 1ª linha do arq
    Reset(dado);
    while not Eof(dado) do //Enquanto n achar o final do arq
      begin
        Read(dado, carac);
        Memo1.Text := Memo1.Text + carac;
      end;
    CloseFile(dado);
  end;
end;



procedure TForm1.BitBtn2Click(Sender: TObject);
var
  dado: TextFile;
begin
  SalvaArquivo.FileName := 'Arquivos de Texto (*.txt)|*.txt';
  if SalvaArquivo.Execute then
    begin
      AssignFile(dado, SalvaArquivo.FileName);
      Rewrite(dado); //cria dinamicamente o arq dado e o abre p q o 
seu conteúdo posssa ser manipulado
      write(dado, Memo1.Text);
    CloseFile(dado);
  end;    

end;

procedure TForm1.BitBtn3Click(Sender: TObject);
begin
  Memo1.CopyToClipboard;
end;

procedure TForm1.BitBtn4Click(Sender: TObject);
begin
  Memo1.CutToClipboard;
end;

procedure TForm1.BitBtn5Click(Sender: TObject);
begin
  Memo1.PasteFromClipboard;
end;

procedure TForm1.BitBtn6Click(Sender: TObject);
begin
  Application.Terminate;
end;

procedure TForm1.BitBtn7Click(Sender: TObject);
begin
  PrinterSetupDialog1.Execute;
end;

procedure TForm1.BitBtn8Click(Sender: TObject);
var
  linha : integer;
  conteudo : textfile;
begin
  AssignPrn(conteudo);
  if PrintDialog1.Execute then
    begin
      AssignPrn(conteudo);
      Rewrite(conteudo);
      for linha := 0 to Memo1.Lines.Count -1 do
        begin
          Writeln(conteudo, Memo1.Line[linha]);
        end;
      CloseFile(conteudo);
   end;
end;

end.

o q pode ser? :)

Responder a