aquarius20th
驱动牛犊
驱动牛犊
  • 注册日期2003-05-22
  • 最后登录2012-05-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望18点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
阅读:1583回复:1

wince 打印问题

楼主#
更多 发布于:2008-06-03 13:45
    下面这段代码在VC下测试通过,到EVC下编译后,在ce5.0下,能够弹出打印机对话框,但是确定后,就没有反应了,不知道为什么?希望大家能帮忙解决
                     CPrintDialog dlg(FALSE);
    if (dlg.DoModal() == IDOK)
    {
        
        CDC dc;
        dc.Attach(dlg.GetPrinterDC());
        //HDC hdc = CreateDC(_T("MYPRINT"), dlg.GetDeviceName,
        //    dlg.GetPortName, )
        CString strTitle;
        strTitle.LoadString(AFX_IDS_APP_TITLE);
        DOCINFO di;
        ::ZeroMemory(&di, sizeof(DOCINFO));
        
        di.cbSize = sizeof(DOCINFO);
        di.lpszDocName = strTitle;
        BOOL bPrintingOK = dc.StartDoc(&di);
        
        CPrintInfo info;
        info.m_rectDraw.SetRect(0, 0, dc.GetDeviceCaps(HORZRES),
            dc.GetDeviceCaps(VERTRES));
        OnBeginPrinting(&dc, &info);
        //for (UINT page = info.GetMinPage();
        //    page <= info.GetMaxPage() && bPrintingOK;
        //    page ++)
        UINT page = 1;
        {
            dc.StartPage();
            info.m_nCurPage = page;
            OnPrint(&dc, &info);
            bPrintingOK = (dc.EndPage() > 0);
        }
        OnEndPrinting(&dc, &info);
        //if (bPrintingOK)
        {
            dc.EndDoc();
            
        }
        //else dc.AbortDoc();
        dc.DeleteDC();
    }
zhoumc
驱动牛犊
驱动牛犊
  • 注册日期2006-07-13
  • 最后登录2008-11-25
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望88点
  • 贡献值0点
  • 好评度80点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-10-09 17:07
可能是"dlg.DoModal() == IDOK "这句不成立
游客

返回顶部