|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.04.2007, 15:50 | #1 |
Регистрация: 04.04.2007
Сообщений: 5
|
Печать текстового файла на сетевой принтер
Здрасте! Нужна помощь.
Надо в делфи написать отправку файла prn на печать в текстовом режиме на принтер который подключен к LPT порту как с локального компа так и из сети. Пробовал использовать это function TForm3.SpoolFile(const FileName, PrinterName: string): Integer; var Buffer: record JobInfo: record // ADDJOB_INFO_1 Path: PChar; JobID: DWORD; end; PathBuffer: array[0..255] of Char; end; SizeNeeded: DWORD; Handle: THandle; PrtName: string; ok: Boolean; begin // Flush job to printer PrtName := PrinterName; if PrtName = '' then PrtName := Printer.Printers[Printer.PrinterIndex]; // Default printer name ok := False; if OpenPrinter(PChar(PrtName), Handle, nil) then if AddJob(Handle, 1, @Buffer, SizeOf(Buffer), SizeNeeded) then if CopyFile(PChar(FileName), Buffer.JobInfo.Path, True) then if ScheduleJob(Handle, Buffer.JobInfo.JobID) then ok := True; if not ok then Result := GetLastError else Result := 0; end; с локального проходит, а с сетевого нет. Обламывается на AddJob вызов для локалки if SpoolFile('c:\test.prn', 'Epson FX-1050') , а для сети я так понял надо писать расшаренное имя if SpoolFile('c:\test.prn', '\\host\Epson FX-1050') Может я что не так делаю или есть варианты другие получше. Если можно с примером! Спасибо! |
06.04.2007, 15:57 | #2 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,597
|
Вообще, на сколько я знаю. можно отправить просто на печать. а вот в настройках винды, надо установить принтер, который печатает по умолчанию.
|
06.04.2007, 15:58 | #3 |
Форумчанин
Регистрация: 04.03.2007
Сообщений: 615
|
печать выполняется на том пинтере, что выбран пол умолчанию и не важно сетевой он или локальный...
|
06.04.2007, 20:16 | #4 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
есть такой класс TPrinter, посмотри в справке дельфи, потом что непонятно отпишись, этот класс получает список всех доступных принтеров а ты просто указываешь индекс принтера из списка на котором хочешь печатать
Последний раз редактировалось rpy3uH; 06.04.2007 в 20:20. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Печать на принтер(USB) | kisser_san | Общие вопросы Delphi | 4 | 25.04.2008 16:18 |
Delphi Редактирование текстового файла | Starscream | Общие вопросы Delphi | 11 | 18.02.2008 17:15 |
Открытие текстового файла | Victor | Microsoft Office Excel | 2 | 16.01.2008 03:42 |
печать на принтер в делфи! | zetrix | БД в Delphi | 0 | 30.10.2006 12:53 |