Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Найти принтер по умолчанию


Автор: yngwie19 22.6.2009, 12:50
Здравствуйте мне нужно вывести в MessageBox() найденный принтер по умолчанию, делаю так:
Код

DWORD dwNeed, dwReturned;
                PRINTER_INFO_5 pinfo5[3];

                if(EnumPrinters(PRINTER_ENUM_DEFAULT,NULL,5,(LPBYTE)pinfo5,sizeof(pinfo5),&dwNeed,&dwReturned))
                {
                    MessageBox(NULL,pinfo5[0].pPrinterName,"",MB_OK);
                }

Обнако выводится пустое сообщение. В чем дело? GetLastError() показывает "Операция выполнена успешно"

Автор: korbian 22.6.2009, 14:01
yngwie19, может http://msdn.microsoft.com/en-us/library/dd144876(VS.85).aspx?

Автор: korbian 22.6.2009, 14:30
Версия windows?
Смущает:
Цитата

PRINTER_ENUM_DEFAULT    Windows 95/98/Me: The function returns information about the default printer.

да и на странице msdn http://msdn.microsoft.com/en-us/library/dd162692(VS.85).aspx есть строчка 
Цитата

Windows 2000/XP: To get information about the default printer, call GetDefaultPrinter

Автор: yngwie19 22.6.2009, 16:39
korbian, спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)