VC/MFC得到电脑的默认打印机、设置默认打印机、遍历电脑打印机
http://www.cnblogs.com/zhangdongsheng/archive/2012/08/24/2655090.html
得到电脑的默认打印机、设置默认打印机、遍历电脑打印机GetDefaultPrinter,SetDefaultPrinter,EnumPrinters
得到电脑的默认打印机
TCHAR szBuffer[1024]={0};
DWORD length = 1024;
intret = ::GetDefaultPrinter(szBuffer,&length);
if(ret== FALSE)
ret = ::GetLastError();
else
{
SetDlgItemText(IDC_EDIT1,szBuffer);
return;
}
if(ret == ERROR_INSUFFICIENT_BUFFER)
{
CString temp;
temp.Format(_T("%d"),length);
AfxMessageBox(CString(_T("ERROR_INSUFFICIENT_BUFFER"))+_T("the real size is ")+temp);
}
elseif(ret == ERROR_FILE_NOT_FOUND)
AfxMessageBox(_T("ERROR_FILE_NOT_FOUND"));
else
{
CString strRet;
strRet.Format(_T("%d"),ret);
AfxMessageBox(strRet);
}
设置电脑默认打印机
TCHAR szPrinterName[1024]={0};
GetDlgItemText(IDC_EDIT2,szPrinterName,1024);
BOOL ret = FALSE;
ret = SetDefaultPrinter(szPrinterName);
if(ret== FALSE)
AfxMessageBox(_T("设置默认打印机失败"));
else
AfxMessageBox(_T("设置默认打印机成功"));
遍历电脑中的打印机
DWORD Flags = PRINTER_ENUM_FAVORITE |PRINTER_ENUM_LOCAL;
DWORD cbBuf;
DWORD pcReturned ;
CString str;
DWORD Level = 2;
TCHAR Name[500]={0} ;
::EnumPrinters(Flags,
Name,
Level,
NULL,
0,
&cbBuf, //需要多少内存
&pcReturned) ;
constLPPRINTER_INFO_2 pPrinterEnum = (LPPRINTER_INFO_2)LocalAlloc(LPTR, cbBuf + 4) ;
if(!pPrinterEnum)
{
str.Format(L"error is %d",GetLastError());
MessageBox(str,0,0);
}
if(!EnumPrinters(
Flags,
Name,
Level,
(LPBYTE)pPrinterEnum,
cbBuf,
&cbBuf,
&pcReturned)
)
{
str.Format(L"error is %d",::GetLastError());
MessageBox(str,0,0);
return ;
}
CString temp;
temp.Format(_T("有几个数组元素%d"),pcReturned);
AfxMessageBox(temp);
for(unsignedint i=0;i<pcReturned;i++)
{
m_ListPrinter.InsertItem(i,NULL); //插入一行
LPPRINTER_INFO_2 pInfo=&pPrinterEnum[i];
m_ListPrinter.SetItemText(i,0,pInfo->pPrinterName);
m_ListPrinter.SetItemText(i,1,pInfo->pServerName);
m_ListPrinter.SetItemText(i,2,pInfo->pDriverName);
m_ListPrinter.SetItemText(i,3,pInfo->pPrintProcessor);
}
LocalFree(pPrinterEnum);
VC/MFC得到电脑的默认打印机、设置默认打印机、遍历电脑打印机相关推荐
- vc控制计算机关机,192上位机VC MFC实现电脑的重启关机注销功能
192上位机VC MFC实现电脑的重启关机注销功能.jpg (9.09 KB, 下载次数: 0) 192上位机VC MFC实现电脑的重启关机注销功能 2016-1-29 21:26 上传 192上位机 ...
- 计算机自带输入法在哪里设置方法,电脑上输入法怎么设置默认输入法(教你设置步骤)...
有时候使用电脑往往会遇到这么个情况,每次对文本的输入之前,必须要切换 特别是对于使用电脑的新手来说,不说太多,直接接入教程. 1.系统默认输入法 系统如果不对输入法进行设置,一般都是默认的输入法&qu ...
- centos安装redis并客户端连接_网络共享打印机图文教程,电脑客户端连接安装设置共享打印机方法...
大家好,我是老盖,首先感谢观看本文,本篇文章做的有视频,视频讲述的比较详细,也可以看我发布的视频. 今天给大家讲一下网络共享打印机,客户端连接共享打印机的方法,电脑点开始,选择设备和打印机,也可以从控 ...
- 电子面单打印机设置 天元打印机 佳博1324D错位校准自检
菜鸟电子面单打印机纸张设置好用一段时间纸张对不齐了,有时候会连续多出纸.包括更换打印标签纸大小,也会同样出现这样的问题,这个时候需要进行打印机初始化或者重置或者校准.在确认电脑上打印机设置的纸张大小没 ...
- sap假脱机打印机设置_SAP打印机设置
SAP打印机配置 一.SAP打印原理 SAP的打印过程分两个步骤:1.创建假脱机请求:2.创建输出请求: 在点击打印按钮后,系统会提示创建假脱机请求后,你可以选择直接生成输出请求,或者手动生成输出请求 ...
- 计算机打印机设置,网口打印机设置教程(新)
一 网口打印机介绍 1.1 思路描述 1.网口打印机能打印的前提是:电脑能发打印数据给打印机. 2.电脑能发打印数据给打印机的前提是:首先电脑和打印机要能通信,然后要安装对应打印机的驱动以及配置端 ...
- sap假脱机打印机设置_SAP打印机配置
一.SAP打印原理 SAP的打印过程分两个步骤:1.创建假脱机请求:2.创建输出请求: 在点击打印按钮后,系统会提示创建假脱机请求后,你可以选择直接生成输出请求,或者手动生成输出请求:产生输出请求后, ...
- 惠普局域网共享打印机设置_HP打印机如何实现局域网跨网段的设置
说明 打印机型号为:HP1108 网络情况:打印机在局域网192.168.1.0/24网段的192.168.1.31上,主机是一台XP系统 需要共享个192.168.4.0/网段的4.72这台主机作为 ...
- Windows SubSystem for Linux(WSL)设置默认和设置默认登陆用户
使用wslconfig命令进行管理 1. 设置默认运行的linux系统 wslconfig /setdefault <DistributionName> 正如上面所说,如果执行wslco ...
最新文章
- JAVA中的接口和抽象类的区别
- autosize px转dp_Android 屏幕适配以及autoSize的原理.md
- 【转】关于Ubuntu的sources.list 的总结
- Oracle隐式游标和显式游标
- 英语发音规则---发/i:/的字母及字母组合
- λ-矩阵(不变因子)
- 幻读Java_脏读、幻读、不可重复读和丢失更新
- css div滚动_如何使用CSS创建可垂直滚动的div?
- springmvc和layui富文本编辑器实时上传图片功能实现
- Xposed框架的安装包和卸载包的默认下载路径以及网站下载地址
- 第一章 前缀和与差分
- QT串口助手设计流程(如何实现一个串口助手
- This view is not constrained vertically: at runtime it will jump to the left unless you add a vertic
- https 请求需要证书,忽略安全证书
- RK3588平台开发系列讲解(Display篇)开机视频的设置
- c语言程序设计实验与习题指导 第2版,C语言程序设计实验与习题指导(第2版)参考答案.doc...
- 魔百和E900V22C_905L3A(B)_5621DS-安卓9.0-纯净语音
- APP自动化测试---adb常用命令+monkey自动化
- 电商平台数据可视化Echarts-Vue项目综合练习(黑马pink老师)学习记录
- 如何写好一篇高质量计算机科学论文?