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

Получение к-ва стр. из спулере принтера под win9x - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ помощь по MESH.DLL из 3D MAX. http://www.cyberforum.ru/cpp-beginners/thread469430.html
Возникли непонятные проблемы, вроде-бы на ровном месте при использовании операции булевского вырезания одного объекта из другого. При конкретной помощи гарантируется премия, правда небольшая...
C++ ADODataset c параметрами в dll Я сделала свою dll. В нее я хочу записать фукнции, в которых есть следующие строки: ADODataSet->Prepared; ADODataSet->Parameters->ParamByName('имя')->Value; AdODataSet->ExecProc(); А dll эти... http://www.cyberforum.ru/cpp-beginners/thread469420.html
C++ Манипуляция с колонками DBGrid
DBGrid (наверное тоже самое и у StringGrid ) , необходимо: 1) Скрывать отдельные колонки и делать их снова видимыми 2) Менять местами колонки Посоветуйте, как это сделать в runtime, из...
Ошибка: Overlapped I/O operation is in progress. ERROR_IO_PENDING C++
В сервисе создаю CInternetSession. На CInternetSession::OpenURL() исключение. GetLastError() возвращает код ошибки 997 - Overlapped I/O operation is in progress. ERROR_IO_PENDING. Не знаю, как...
C++ Можно ли перехватить очередь печити? http://www.cyberforum.ru/cpp-beginners/thread469380.html
1. Можна ли перехватить очередь печити - назначить программу, которая будет обрабатывать файлы, помещенные в очередь, перед печатью. 2. Можна ли определить статус спулера при приостановленной печати...
C++ WinAPI: CreateProcess и DOS-приложение Народ, просветите молодого и неопытного: Почему CreateProcess под Win2000 не может запустить DOS-приложение(Паскаль-программа, скомпилированная в TP7.01 под Win98)? GetLastError выдает код ошибки... подробнее

Показать сообщение отдельно
serdxb
Сообщений: n/a

Получение к-ва стр. из спулере принтера под win9x - C++

11.08.2008, 14:51. Просмотров 602. Ответов 0
Метки (Все метки)

Пытаюсь получить количество страниц посланных на печать из спулера принтера. Когда я читаю задания посланные с локальной машины то количество страниц выводиться правильно когда задания посланные с сетевой машины то в количестве страниц 0. Данное справедливо только для WIN9x под WIN200 все работает без проблем. Вот функция:

BOOL ListJobsForPrinter( LPTSTR szPrinterName )
{

HANDLE hPrinter;
DWORD dwNeeded, dwReturned, i;
JOB_INFO_1 *pJobInfo;

if( ! OpenPrinter( szPrinterName, &hPrinter, NULL ) )
return FALSE;

if( ! EnumJobs( hPrinter, 0, 0xFFFFFFFF, 1, NULL, 0, &dwNeeded,
&dwReturned ) )
{
if( GetLastError() != ERROR_INSUFFICIENT_BUFFER )
{
ClosePrinter( hPrinter );
return FALSE;
}
}
if( (pJobInfo = (JOB_INFO_1 *)malloc( dwNeeded )) == NULL )
{
ClosePrinter( hPrinter );
return FALSE;
}
if( ! EnumJobs( hPrinter, 0, 0xFFFFFFFF, 1, (LPBYTE)pJobInfo,
dwNeeded, &dwNeeded, &dwReturned ) )
{
ClosePrinter( hPrinter );
free( pJobInfo );
return FALSE;
}
ClosePrinter( hPrinter );

for(i=0;i<dwReturned;i++)
{
AnsiString tmp=pJobInfo[i].pMachineName;
WideString ComputerName=tmp.Trim();
WideString TotalPage=FloatToStr(pJobInfo[i].TotalPages);
... some code but pJobInfo[i].TotalPages==0 !!!
}

free( pJobInfo );
return TRUE;
}

В MSDN написано что количество страниц =0 когда в задание нет информации о разделителях дело наверно в этом но как получить это количество ? Заранее спасибо.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru