问一个用VC设置打印机的问题,高手请显身!!! 用户要求用程序的方式修改网络打印机用纸的设定,打印机是指定的Ricoh IPSIO NX850和Ricoh IPSIO NX920。我下载了驱动,看了看打印机设置界面,设定的地方犄角旮旯的,估计用普通的Win32API可能无法完成。想用前几天一位兄弟教的FindWindow/SendMessage大法。但是不知道如何打开指定打印机的设置窗口,恳请高人显身。顺便问一下有没有方法获得网络打印机的IP地址? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CPrintDialog dlg(FALSE); if(IDOK==dlg.DoModal()){ CDC dcPrint; dcPrint.Attach(dlg.GetPrinterDC()); DEVMODE* pdm=dlg.GetDevMode(); pdm->dmOrientation=DMORIENT_LANDSCAPE; dcPrint.ResetDC(pdm); DOCINFO di; ::ZeroMemory(&di,sizeof(DOCINFO)); di.cbSize=sizeof(DOCINFO); di.lpszDocName=_T("公司雇员表"); int nRow=m_Grid.GetFixedRowCount(); while(nRow<m_Grid.GetRowCount()){ dcPrint.StartDoc(&di); dcPrint.StartPage(); PrintFrame(&dcPrint); PrintData(&dcPrint,nRow); dcPrint.EndPage(); } dcPrint.EndDoc(); dcPrint.Detach(); } DEVMODE* pdm=dlg.GetDevMode(); pdm->dmOrientation=DMORIENT_LANDSCAPE; dcPrint.ResetDC(pdm);这三行是用来设置纸张方向为横向.因为内容比较宽 看看哪个devmode能不能用,有的devmode不能用 先各位感谢,特别是MajorVon(IT民工) ,不过我的问题只是要打开打印机的属性设置对话框我用了AdvancedDocumentProperties这个API打开属性设置对话框,接下来就是用FindWindow/SendMessage的方法来设置了 为什么在activex控件上添加的控件不显示? 线程同步问题 高手看过来 static的句柄问题 MDI中,视图之间的数据传递有几种方法? 学习网络编程,这两本书,我应该买哪一本?? 请问vc7里面怎样为程序添加附加对象库? 求类似windows资源管理器那样的可以处理复制、粘贴等功能的右健菜单。 如何得到一个弹出式菜单中,我点击的那一项的上面的文本? 我想工具提示随鼠标的移动动态显示鼠标位置,请问应该怎么编写程序? 如何用VC6.0做一个LCD图生成程序?符合单片机格式。大侠你发言了!! 如何得到默认打印机的纸张大小? 如何在程序中将自己的代码段写入文件?
if(IDOK==dlg.DoModal()){
CDC dcPrint;
dcPrint.Attach(dlg.GetPrinterDC());
DEVMODE* pdm=dlg.GetDevMode();
pdm->dmOrientation=DMORIENT_LANDSCAPE;
dcPrint.ResetDC(pdm); DOCINFO di;
::ZeroMemory(&di,sizeof(DOCINFO));
di.cbSize=sizeof(DOCINFO);
di.lpszDocName=_T("公司雇员表"); int nRow=m_Grid.GetFixedRowCount();
while(nRow<m_Grid.GetRowCount()){
dcPrint.StartDoc(&di);
dcPrint.StartPage();
PrintFrame(&dcPrint);
PrintData(&dcPrint,nRow);
dcPrint.EndPage();
}
dcPrint.EndDoc(); dcPrint.Detach();
}
pdm->dmOrientation=DMORIENT_LANDSCAPE;
dcPrint.ResetDC(pdm);这三行是用来设置纸张方向为横向.
因为内容比较宽
我用了AdvancedDocumentProperties这个API打开属性设置对话框,接下来就是用FindWindow/SendMessage的方法来设置了