设为首页 加入收藏

TOP

VC获取打印机与打印作业的状态(二)
2014-11-23 21:30:34 】 浏览:2145
Tags:获取 打印机 打印 作业 状态
nterStatus & PRINTER_STATUS_ERROR)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印出错!"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_PAPER_JAM)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印机卡纸"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_PAPER_OUT)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印纸位置不正确"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_PAPER_PROBLEM)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印纸出现问题"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_OUTPUT_BIN_FULL)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印输出已满"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_NOT_AVAILABLE)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印机不可用"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_TONER_LOW)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印机墨粉不足"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_NO_TONER)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印机没有墨粉"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_OUT_OF_MEMORY)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印内存溢出"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_OFFLINE)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("无法连接打印机,\n可能是打印机未启动"));
return bResult;
}
else if(dwPrinterStatus & PRINTER_STATUS_DOOR_OPEN)
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印机的门是开着的,\n请关闭"));
return bResult;
}

for (i = 0; i < cJobs; ++i)
{
/// 如果打印页正在打印
if (pJobs[i].Status & JOB_STATUS_PRINTING)
{
_tcscpy(m_tchPrinterMessage,_TEXT("正在打印..."));

if (pJobs[i].Status &
(JOB_STATUS_ERROR |
JOB_STATUS_OFFLINE |
JOB_STATUS_PAPEROUT |
JOB_STATUS_BLOCKED_DEVQ))
{
free( pJobs );
_tcscpy(m_tchPrinterMessage,_TEXT("打印出错!"));
return bResult;
}
}
///// 如果打印页已经打印或删除
//if(pJobs[i].Status &
// (JOB_STATUS_PRINTED|
// JOB_STATUS_DELETED))
//{
// free( pJobs );
// ::ClosePrinter(m_hPrintHandle);
// return PRINT_END;
//}
/// 如果打印页已经打印
if(pJobs[i].Status & JOB_STATUS_PRINTED)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
_tcscpy(m_tchPrinterMessage,_TEXT("打印成功!"));
bResult = PRINT_TRUE;
return bResult;
}
/// 如果已经删除打印作业
else if(pJobs[i].Status & JOB_STATUS_DELETED)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
_tcscpy(m_tchPrinterMessage,_TEXT("已取消打印"));
bResult = PRINT_TRUE;
return bResult;
}
else if(pJobs[i].Status & JOB_STATUS_PAUSED)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
bResult = PRINT_FALSE;
_tcscpy(m_tchPrinterMessage,_TEXT("打印作业暂停..."));
return bResult;
}
else if(pJobs[i].Status & JOB_STATUS_ERROR)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
bResult = PRINT_FALSE;
_tcscpy(m_tchPrinterMessage,_TEXT("打印作业出错"));
return bResult;
}
else if(pJobs[i].Status & JOB_STATUS_SPOOLING)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
bResult = PRINT_FALSE;
_tcscpy(m_tchPrinterMessage,_TEXT("打印作业脱机"));
return bResult;
}
else if(pJobs[i].Status & JOB_STATUS_SPOOLING)
{
free( pJobs );
::ClosePrinter(m_hPrintHandle);
bResult = PRINT_FALSE;
_tcscpy(m_tchPrinterMessage,_TEXT("打印作业脱机"));
return bResult;
}
e
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇VC资源文件版本解析类: (1) 头文.. 下一篇VC中创建DLL,导出全局变量,函数..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目