Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kwas
0 / 0 / 0
Регистрация: 09.03.2008
Сообщений: 8
#1

Структура DEVMODE принтера - C++

29.04.2008, 22:12. Просмотров 985. Ответов 0
Метки нет (Все метки)

Люди, подскажите, кто грамотный, как заполучить структуру DEVMODE принтера.
Теория такая: определяем размер этой структуры (для каждого притера разный), соответственно, выделяем под неё память, передаем указатель на неё в API-функцию DocumentProperties, читаем нужные поля.
Делаю так:

#include <wingdi.h>

String DevName = 'HP DJ 1220C'; // для проверки пишу руками
LPHANDLE phPrinter;
OpenPrinter (DevName.c_str(), phPrinter, NULL); //получаю хэндл принтера

//получить требуемый размер структуры DEVMODE (не работает)
long bufsize = DocumentProperties(Handle, phPrinter, DevName.c_str(),0,0,0);

/* даже если определить этот размер другим способом, */
long bufsize1, bufsize2;
bufsize1 = DeviceCapabilities(DevName.c_str(), 'LPT1:', DC_SIZE, '',0);
bufsize2 = DeviceCapabilities(DevName.c_str(), 'LPT1:', DC_EXTRA,'',0);
bufsize = bufsize1 + bufsize2;
/* то как потом _переопределить_ размер этой структуры для передачи
в эту же функцию четвертым параметром*/

PDEVMODE dmOutDM; // такой тип требует функция DocumentProperties
DocumentProperties(hFr,phPrinter,DevName.c_str(),dmOutDM,0,2); // всегда
возвращает ошибку

И ничего не получается. Я понимаю, что ошибка в ДНК, но может быть и еще где-то.

ЗЫ: А вообще-то задача получить/установить определённый формат бумаги.
Не в мм, а по названию (А3, А4, ...).
Если это можно сделать както проще, то, плиз, подскажите.

--
Константин Васильев
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2008, 22:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Структура DEVMODE принтера (C++):

В текстовом файле структура – информация о компьютерах. Структура с полями: название, стоимость. - C++
Ребят, помогите пожалуйста, 29 июня экзамен по &quot;Основы программирования&quot;,кто сколько сможет сделать задач, тем всей группой поставим &quot;+&quot;...

Структура «База», сущности «Универсам» и «Продукты», структура «Товар» - C++
1. Создать структуру «База», включающую не менее 3 полей. 2. Создать сущности «Универсам» и «Продукты» описанной структуры. 3. Создать...

Структура DateTime, битовая структура - C++
Условие: Структура содержит информацию о дате и времени некоторого события: struct datetime { unsigned short Year; // год ...

Структура, доступная из всех файлов проекта ("глобальная" структура) - C++
Есть четыре структуры (body, gun, enemy, st), описанные в main.cpp. К main.cpp подключен хедер save.h, в котором имеется функция void...

Как получить DC принтера? - C++
Не могу найти информацию,можно ли получить контекст принтера,и если можно то как затем распечатывать информацию, как определить конец...

Помогите получить HDC принтера вывести печать текста функцией DrawText - C++
Написал программку (для бух.) и хочу сделать свою процедуру печати. Помогите получить HDC принтера с помощью CreateDC, вывести туда...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2008, 22:12
Привет! Вот еще темы с ответами:

Автоматическое определение принтера для печати при отсутствии принтера по умолчанию - MS Word
Вопрос. Постоянно таскаю с собой ноут, и приходится печатать на разных принтерах. Можно ли наладить их поиск и установку автоматом. По...

Подключение обычного лазерного принтера вместо принтера чеков в 1с предприятие 8 (ресторан) - 1С
Добрый день! Подскажите реально подключить к 1с предприятие 8 Ресторан вместо принтера чеков обычный HP 1018 , если да, то каким образом?...

Структура таблицы для ввода номенклатуры в БД Аксесс 2003+ структура изделия - MS Access
Доброго времени суток форумчане! Продолжаю писать свою самоделку, возник вопрос: Номенклатуру в БД надо вводить в одно поле (...

Структура проектов, структура выходного каталога и пользовательские расширения сборок - Visual Studio
В общем есть решение из нескольких проектов. Есть зависимости от сторонних библиотек. Требуется сделать так, чтобы при компиляции этого...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru