在VC中可以使用以下代码弹出打印属性设置对话框:
m_hPrinter = NULL;
PRINTER_DEFAULTS PrinterDef = { NULL, NULL, PRINTER_ALL_ACCESS };
if(OpenPrinter( lpzsPrinterName, &m_hPrinter, &PrinterDef) )
{
DEVMODE *pDevModout;
//获取DEVMODE长度
long len = DocumentProperties(m_hWnd,printer.GetPrinterHandle(),L"Aetas DX2005",NULL,NULL,0);
//分配内存
pDevModout = (DEVMODE*)GlobalAlloc(GMEM_FIXED ,len);
//弹出打印设置对话框
if (DocumentProperties(m_hWnd,printer.GetPrinterHandle(),L"Aetas DX2005",pDevModout,NULL,DM_PROMPT|DM_COPY) == IDOK)
{
//在此进行设成成功后的操作
}
//资源释放
ClosePrinter(m_hPrinter);
GlobalFree(pDevModout);
}