Єдиний спосіб, отримати доступ до поточних налаштувань принтерів, це через структури m_hDevMode і m_hDevNames зберігаються в CWinApp. Ці члени доступні через структуру PRINTDLG, покажчик якої передається в функцію-член GetPrinterDeviceDefaults () класу, успадкованих від CWinApp. Так як повернені значення hDevMode і hDevNames є змінними HGLOBAL, то для того, щоб повернути покажчик на структури необхідно викликати. GlobalLock (). Використовуючи даний покажчик, можна отримати інформацію з структури, щоб визначити поточний стан принтера. Більш докладно про вміст цих структур можна подивитися DEVMODE і DEVNAMES в хелпе по SDK.
Нижченаведений приклад є функцією-членом класу, успадкованих від CView, яка повертає поточний розмір сторінки принтера використовуючи GetDeviceCaps () на об'єкті CDC, створеного з установками принтера:
приклад коду
Наступний приклад демонструє, як використовувати функцію EnumJobs для отримання структури JOB_INFO і як використовувати функцію GetPrinter для отримання структури PRINTER_INFO: Приклад BOOL GetJobs (HANDLE hPrinter, / * Дескриптор принтера. * / JOB_INFO_2 ** ppJobInfo, / * Покажчик який.
Даний набір API функцій Win32 спулера займається в основному заповненням масиву структур. Однак, структури зазвичай включають в себе покажчики на рядки або на інші дані. Ці сторонні дані також повинні бути збережені в яку повертатимуть пам'яті, відповідно вони додаються в кінець масиву.
Іноді, необхідно в обхід драйвера посилати дані на принтер безпосередньо. Наступний приклад показує, як зробити це як для локального принтера, так і для мережевого. Цей спосіб може служити заміною послідовності PASSTHROUGH, а так же методу SpoolFile. // Функція RawDataToPrinter - посилає.
Windows Software Development Kit (SDK) не надає функції для обчислення країв друку безпосередньо. Додаток може обчислити цю інформацію за допомогою виклику GetDeviceCaps (). У цій статті обговорюються ці функції, а так же наводяться фрагменти коду в якості ілюстрацій. Додаток може.
У статті пояснюється, як можна модифікувати стандартний дилогії друку і використовувати його в додатку MFC. Налаштування діалогу друку, тягне за собою зміну шаблону стандартного діалогу друку Window, при цьому, Ви можете додавати нові елементи управління і / або видаляти існуючі. Отже, по.