Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-1127272192
КиТаЯц
2005-09-21 07:09
2005.10.09
Отключить сообщение Debugger EConvertError


14-1126934091
guesst
2005-09-17 09:14
2005.10.09
fastreport


1-1127281655
___BBK
2005-09-21 09:47
2005.10.09
MainMenu


1-1127034318
Alexis
2005-09-18 13:05
2005.10.09
Парсинг алгебраических выражений (полиномов)


9-1117325116
Dungeon
2005-05-29 04:05
2005.10.09
ОПРОС: Какая у Вас видеокарта?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский