Помогите с печатью !!!
От: CVB  
Дата: 27.02.03 10:12
Оценка:
Как напечатать 1-ну строчку на формате А4 без прокрутки до конца листа после печати!!!
Re: Помогите с печатью !!!
От: Patalog Россия  
Дата: 27.02.03 12:02
Оценка:
Здравствуйте, CVB, Вы писали:

EndPage спасет отца русской демократии.
Почетный кавалер ордена Совка.
Re[2]: Помогите с печатью !!!
От: CVB  
Дата: 27.02.03 14:06
Оценка:
Здравствуйте, Patalog, Вы писали:

P>Здравствуйте, CVB, Вы писали:


P>EndPage спасет отца русской демократии.


EndPage не помогает.
Прокрутка страницы как была так и осталась
if(OpenPrinter(szPrinterName, &hPrinter, &pd))
{
errror = StartDocPrinter(hPrinter, 1, (BYTE*)&aaa);
errror = GetLastError();
strTmp = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
strTmp += "\r\n";
strcpy(wbuff, strTmp);
rez = WritePrinter(hPrinter, wbuff, strTmp.GetLength(), &writeByte);
strTmp = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB";
strcpy(wbuff, strTmp);
rez = WritePrinter(hPrinter, wbuff, strTmp.GetLength(), &writeByte);
errror = GetLastError();
errror = EndDocPrinter(hPrinter);
}

после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.
Re[3]: Помогите с печатью !!!
От: IPv6 Казахстан  
Дата: 27.02.03 16:48
Оценка:
На codeguru был пример класса, который печатает по одной строчке по мере поступления этих строчек (типа записи в лог — только на бумагу). соответсвенно напечатал — и ждет пока ему не скажут еще ченить печатать, страницу не крутит. Поищи, может это оно
Re[3]: Помогите с печатью !!!
От: Аноним  
Дата: 28.02.03 05:31
Оценка:
Здравствуйте, CVB, Вы писали:

CVB>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.

Непонятно, чего вы хотите?
Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает.
Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите.
Уточните задание
Re[4]: Помогите с печатью !!!
От: Аноним  
Дата: 28.02.03 05:35
Оценка:
Здравствуйте, IPv6, Вы писали:

IP>На codeguru был пример класса, который печатает по одной строчке по мере поступления этих строчек (типа записи в лог — только на бумагу). соответсвенно напечатал — и ждет пока ему не скажут еще ченить печатать, страницу не крутит. Поищи, может это оно

Прикольно. И с лазерниками эта программа тоже работает? Интересно, как? Лазерник же целиком страницу печатает и сразу же ее выплевывает. Может, страницу сразу после того надо снова заправлять в принтер?
Re[5]: Помогите с печатью !!!
От: IPv6 Казахстан  
Дата: 28.02.03 08:17
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, IPv6, Вы писали:


IP>>На codeguru был пример класса, который печатает по одной строчке по мере поступления А>Прикольно. И с лазерниками эта программа тоже работает? Интересно, как? Лазерник же целиком страницу печатает и сразу же ее выплевывает. Может, страницу сразу после того надо снова заправлять в принтер?

ХЗ я помню что читал описание
Re[3]: Помогите с печатью !!!
От: Patalog Россия  
Дата: 28.02.03 09:19
Оценка:
Здравствуйте, CVB, Вы писали:

[]

А, вот ты про что...

На каком принтере печатаешь? Ибо, к примеру, на лазернике ето просто не возможно, "page oriented model", так скать. Даже более низкоуровненые средства типа HPGL, PCL, PCL XL не помогут.
Почетный кавалер ордена Совка.
Re[4]: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 09:48
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, CVB, Вы писали:


CVB>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.

А>Непонятно, чего вы хотите?
А>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает.
А>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите.
А>Уточните задание

Я печатаю на Матричном принтере.
Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
Re: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 09:59
Оценка:
Здравствуйте, CVB, Вы писали:

CVB>Как напечатать 1-ну строчку на формате А4 без прокрутки до конца листа после печати!!!


Я печатаю на Матричном принтере.
Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
Re[2]: Помогите с печатью !!!
От: Patalog Россия  
Дата: 28.02.03 10:43
Оценка:
Здравствуйте, CVB, Вы писали:

[]

Хм, а сразу задать страницу нужного размера не подходит?
Почетный кавалер ордена Совка.
Re[3]: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 11:53
Оценка:
Здравствуйте, Patalog, Вы писали:

P>Здравствуйте, CVB, Вы писали:


P>[]


P>Хм, а сразу задать страницу нужного размера не подходит?


Пока так и реализовано.
Но это немного не то.

Может кто знает как через DEVMODE можно задать размер.
В MSDN-не написано надо поставить dmPaperSize = 0 и тогра через dmPaperLength и dmPaperWidth можно задавать размер.
При изменении этих пораметров ничего не происходит. Какая бумага до этого была такая и осталась.
Re[4]: Помогите с печатью !!!
От: Patalog Россия  
Дата: 28.02.03 11:55
Оценка:
Здравствуйте, CVB, Вы писали:

Флаги DM_PAPERLENGTH | DM_PAPERWIDTH стоят?
Почетный кавалер ордена Совка.
Re[5]: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 11:59
Оценка:
Здравствуйте, Patalog, Вы писали:

P>Здравствуйте, CVB, Вы писали:


P>Флаги DM_PAPERLENGTH | DM_PAPERWIDTH стоят?


Пробовал и не получилось.
Надо ещё раз попробовать!
Re[5]: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 12:03
Оценка:
Здравствуйте, Patalog, Вы писали:

P>Здравствуйте, CVB, Вы писали:


P>Флаги DM_PAPERLENGTH | DM_PAPERWIDTH стоят?


Нет установка этих флагов ничего не изменила
Re[5]: Помогите с печатью !!!
От: Serguei666 Беларусь  
Дата: 28.02.03 16:20
Оценка:
Здравствуйте, CVB, Вы писали:

CVB>Здравствуйте, Аноним, Вы писали:


А>>Здравствуйте, CVB, Вы писали:


CVB>>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.

А>>Непонятно, чего вы хотите?
А>>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает.
А>>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите.
А>>Уточните задание

CVB>Я печатаю на Матричном принтере.

CVB>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.

Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки.
Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?
Хотите сказать 'спасибо'? Тогда поставьте оценку
Re[6]: Помогите с печатью !!!
От: CVB  
Дата: 28.02.03 17:51
Оценка:
Здравствуйте, Serguei666, Вы писали:

S>Здравствуйте, CVB, Вы писали:


CVB>>Здравствуйте, Аноним, Вы писали:


А>>>Здравствуйте, CVB, Вы писали:


CVB>>>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.

А>>>Непонятно, чего вы хотите?
А>>>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает.
А>>>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите.
А>>>Уточните задание

CVB>>Я печатаю на Матричном принтере.

CVB>>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.

S>Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки.

S>Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?

Пробовал... Говорит неправьльно задан параметр. А что именно неправильно заданоо не понятно так как те пораметры которые задаются в них ошибиться никак не возможно .
Re[2]: Помогите с печатью !!!
От: v_su Мухосранск  
Дата: 01.03.03 05:00
Оценка:
Здравствуйте, CVB, Вы писали:

CVB>Я печатаю на Матричном принтере.

CVB>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.

А почему не используеися raw text? Или есть ограничения?
... << RSDN@Home 1.0 beta 6a |12:00 >>
Re[7]: Помогите с печатью !!!
От: Serguei666 Беларусь  
Дата: 01.03.03 05:11
Оценка:
Здравствуйте, CVB, Вы писали:

S>>Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки.

S>>Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?

CVB>Пробовал... Говорит неправьльно задан параметр. А что именно неправильно заданоо не понятно так как те пораметры которые задаются в них ошибиться никак не возможно .


Есть еще функция FormatMessage — вы просите систему дать вам описание ошибки — и система вам дает внятный текст. Попробуйте посмотреть, чего эта фунция вам вернет. Может, какую полезную инфу, по которой можно будет догадаться
Хотите сказать 'спасибо'? Тогда поставьте оценку
Re[3]: Помогите с печатью !!!
От: CVB  
Дата: 01.03.03 10:38
Оценка:
Здравствуйте, v_su, Вы писали:

VS>Здравствуйте, CVB, Вы писали:


CVB>>Я печатаю на Матричном принтере.

CVB>>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.

VS>А почему не используеися raw text? Или есть ограничения?


VS>


А что это за ф-я а то я ее в VC4 ненашел !?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.