Форум: "WinAPI";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
ВнизКак можно распечатать файл LPT? Найти похожие ветки
← →
jeka_t (2005-09-19 15:33) [0]Добрый день...
У меня есть два принтера: Xerox и Canon
Один из них используется по умолчанию...
Необходимо отправлять файлы печати (PLT) на соответственные принтера...
Естьли возможность с помощью функции ShellExecute осуществить распечатку, либо другая функция есть?
← →
DC-AC (2005-09-20 08:35) [1]Насколько я знаю, через спулер можно распечатать файлы .prn на любой принтер, установленный в системе (при условии, если он поддерживает все служебные команды, содержащиеся в prn файле), PLT - не слышал такого.
← →
jeka_t (2005-09-20 10:31) [2]Это тоже самое что и PRN - команды для принтера...
Но мне необходимо печатать из Делфи...
Может кто знает как?
← →
Leonid Troyanovsky © (2005-09-20 11:01) [3]
> jeka_t (20.09.05 10:31) [2]
> Это тоже самое что и PRN - команды для принтера...
> Но мне необходимо печатать из Делфи...
http://groups.google.com/group/fido7.ru.delphi.chainik/msg/c68e79b088787eab
--
Regards, LVT.
← →
jeka_t (2005-09-20 11:24) [4]uses WinSpool;
procedure WriteRawStringToPrinter(PrinterName:String; S:String);
var
Handle: THandle;
N: DWORD;
DocInfo1: TDocInfo1;
begin
if not OpenPrinter(PChar(PrinterName), Handle, nil) then
begin
ShowMessage("error " + IntToStr(GetLastError));
Exit;
end;
with DocInfo1 do begin
pDocName := PChar("test doc");
pOutputFile := nil;
pDataType := "RAW";
end;
StartDocPrinter(Handle, 1, @DocInfo1);
StartPagePrinter(Handle);
WritePrinter(Handle, PChar(S), Length(S), N);
EndPagePrinter(Handle);
EndDocPrinter(Handle);
ClosePrinter(Handle);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteRawStringToPrinter("HP", "Test This");
end;
Вот интересная функция, но как указать не текст а файл?
← →
Leonid Troyanovsky © (2005-09-20 11:30) [5]
> jeka_t (20.09.05 11:24) [4]
> Вот интересная функция, но как указать не текст а файл?
Тебе не эта функция нужна, а та, которая из буфера печатает.
Т.е., делаешь TFileStream, читаешь в буфер, отправляешь его на
печать, читаешь следующий кусок и т.д.
--
Regards, LVT.
← →
jeka_t (2005-09-20 11:35) [6]А как отправить из буфера на печать?
← →
Leonid Troyanovsky © (2005-09-20 11:48) [7]> jeka_t (20.09.05 11:35) [6]
> А как отправить из буфера на печать?
var
buff: array [0..$FFFFF] of Char;
..
WritePrinter(Handle, @buff, SizeOf(buff), N);
..
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.047 c