Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
ВнизКак распечатать программно файл печати (PLT, PRN)? Найти похожие ветки
← →
jeka_t (2005-09-19 18:47) [0]Подскажите пожалуйста, как можно отправить файл печати созданный ранее (PRN, LPT) на распечатку?
← →
Anatoly Podgoretsky © (2005-09-19 20:55) [1]copy /b file prn
← →
jeka_t (2005-09-20 10:18) [2]Неа, виснит машина...
У меня 3 принтера и он не разумеет что от него хотят..
← →
Anatoly Podgoretsky © (2005-09-20 10:33) [3]Принтер должен быть с той же системой команд.
← →
jeka_t (2005-09-20 10:35) [4]Да тот же принтер...
В FARе работает все класно, а вот с командой, беда...
А есть ли другая функция? или компонент, с помощью кторого можно распечатать?
← →
Leonid Troyanovsky © (2005-09-20 11:00) [5]
> jeka_t (20.09.05 10:35) [4]
> Да тот же принтер...
> В FARе работает все класно, а вот с командой, беда...
> А есть ли другая функция? или компонент, с помощью кторого
> можно распечатать?
В fare работает, а в cmd.exe нет? Слабо верится.
Кста, указывать надо порт принтера, если принтеров несколько.
Для принтеров псевдонимы указаны в свойствах, закладка Ports.
--
Regards, LVT.
← →
jeka_t (2005-09-20 11:20) [6]Нашел такой вариант:
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:39) [7]
> jeka_t (20.09.05 11:20) [6]
> Но он работает с текстом, а я хочу с файлом...
with TFileStream.Create (..) do
try
SetLength(s, Size);
ReadBuffer(s[1], Length(s));
finally
Free;
end;
WriteRawStringToPrinter("HP", s);
--
Regards, LVT.
← →
Bonjovy (2005-09-20 12:08) [8]Причём это русский текст не печатает, а жаль.
← →
jeka_t (2005-09-20 12:30) [9]УРА!!!!!!!!!!!!!!!!!!!!!!!!
Шикарно получилось,
Спасибо огромное...
Моим эмоциям нет границ и улыбка просто не сходит с моего лица...
Очень окуратно, класно получилось...
Ещё раз спасибочки....
← →
Leonid Troyanovsky © (2005-09-20 12:33) [10]
> Bonjovy (20.09.05 12:08) [8]
> Причём это русский текст не печатает, а жаль.
Почему не печает?
Попробуй ему CharToOem.
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c