我的代码如下,但是不生效哦。。应该怎样改?谢谢了。BOOL CWrapperView::OnPreparePrinting(CPrintInfo* pInfo) 
{

if(m_PageSize.cx != 0 && m_PageSize.cy != 0)
{
PRINTDLG   pd;
LPDEVMODE  lpDevMode; 
if(AfxGetApp()->GetPrinterDeviceDefaults(&pd))
{
lpDevMode = (LPDEVMODE)GlobalLock(pd.hDevMode); 
if(lpDevMode)
{
                                     //m_strPrinterName里保存着打印机设备名称
if(!m_strPrinterName.IsEmpty())
{
CString strName(m_strPrinterName);
strName = strName.Left(CCHDEVICENAME); strcpy((char*)lpDevMode->dmDeviceName , strName);//这里把打印机设备名称写入倒lpDevMode里面。
}
lpDevMode->dmFields = DM_PAPERSIZE|DM_PAPERWIDTH|DM_PAPERLENGTH;
lpDevMode->dmPaperSize = DMPAPER_USER;
            
//以下设定长宽
lpDevMode->dmPaperLength = (short)m_PageSize.cy;
lpDevMode->dmPaperWidth  = (short)m_PageSize.cx;
}
GlobalUnlock(pd.hDevMode);
}
}
if(m_iMinPage != -1)
pInfo->SetMinPage(m_iMinPage);
if(m_iMaxPage != -1)
pInfo->SetMaxPage(m_iMaxPage);
return DoPreparePrinting(pInfo);
}