Otra cosa: Agrega : (dos puntos) después del puerto al que quieres imprimir. De lo contrario entenderá que es un archivo sin extensión.
Y si puedes no utilices Printer como variable, pues puede estar confundiéndose con la Unit Printer. Yo la llamaría Puerto.
AssignFile( Puerto, 'LPT1
:' );
Código Delphi
[-]
var
Puerto : TextFile;
[...]
AssignFile( Puerto, 'LPT1:' );
FileMode := fmOpenReadWrite;
try
Rewrite( Puerto);
Write( Puerto, CHR(27) + CHR(64 ) ); <--- aqui se tranca
except
on e:Exception do
begin
ShowMessage('La impresora no responde'+#13+e.Message);
end;
end;
CloseFile( Puerto );