Форум Программирование Узнать имя сетевого принтера |
|
Добрый день! Замучился уже. Задача - послать текстовый файл на матричный принтер (локальный или сетевой). С локальным просто команда (copy file.txt prn), а как узнать сетевое имя для сетевого принтера. Использую printdialog и модуль printers. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls, Menus, Buttons, RpSystem, RpDefine, RpRave, RpFiler, RpBase,printers; begin if form3.PrintDialog1.Execute then name_prn:=Printers.Printer.Printers.Strings[printer.PrinterIndex]; Проблема в том, что выводится имя "\\server\Epson LX-300+", а его сетевое имя "\\server\EpsonLX-" , выходит обрезано до 8 символов и удалены пробелы. Но пользователь может его поменять в свойствах принтера и ... нет печати. Как найти сетевое имя принтера программно??? Очень прошу помощи!!! | ||||||
|
Мож я чо не догоняю, но зачем вообще нужно знать имя сетевого принтера, если PrintDialog сам настраивает спулер на выбранный в нём (диалоге) принтере? Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! | ||||||
|
А потому, что текст печатается на матричный принтер!!! И должен печататься в текстовом режиме, не в режиме Windows. На лазерник это имя не нужно. | ||||||
|
Тогда я пас. Но если найдёшь решение - отпишись, мне интересно. Я бы поэкспериментировал, но у меня нету матричного принтера. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! | ||||||
|
Что-то не могу припомнить стандартного способа расшарить prn. Как вариант написать сетевую службу, которая занимается печатью на локальный принтер, принятых по сети данных. "Digital Networked Knight" | ||||||
Перейти в раздел:
© 2004 - 2024, Delphi.int.ru |
Версия форума: 1.10 (19.01.2010) |
Выполнено за 0.01 сек. |