获得所有打印机
来源:互联网 发布:传奇永恒网络传输异常 编辑:程序博客网 时间:2024/05/15 09:30
- //得到所有打印机
- DWORD dwSize,dwPrinters;
- ::EnumPrinters(PRINTER_ENUM_CONNECTIONS | PRINTER_ENUM_LOCAL,NULL,5,NULL,0,&dwSize,&dwPrinters);
- BYTE *pBuffer=new BYTE[dwSize];
- ::EnumPrinters(PRINTER_ENUM_CONNECTIONS | PRINTER_ENUM_LOCAL,NULL,5,pBuffer,dwSize,&dwSize,&dwPrinters);
- CString sPrinter;
- if(dwPrinters!=0)
- {
- PRINTER_INFO_5 *pPrnInfo=(PRINTER_INFO_5 *)pBuffer;
- for(int i=0;i <dwPrinters;i++)
- {
- sPrinter.Format(_T("%s"),pPrnInfo-> pPrinterName);
- pPrnInfo++;//指针后移
- }
- }
- delete []pBuffer;
- //得到默认打印机并弹出属性编辑
- #include <WinSpool.h>
- #pragma comment(lib, "Winspool.lib")
- #include <shellapi.h>
- #pragma comment(lib, "shell32.lib")
- BOOL OpenDefaultPrinter()
- {
- BOOL bRet = FALSE;
- DWORD dwSize = 0;
- if(!GetDefaultPrinter(NULL, &dwSize)
- && GetLastError()==ERROR_INSUFFICIENT_BUFFER)
- {
- TCHAR *szPrinter = new TCHAR[dwSize+1];
- if(GetDefaultPrinter(szPrinter, &dwSize))
- {
- if(SHInvokePrinterCommand(
- NULL, //GetSafeHwnd(),
- PRINTACTION_PROPERTIES,
- szPrinter,
- NULL,
- FALSE))
- {
- bRet = TRUE;
- }
- }
- delete []szPrinter;
- }
- return bRet;
- }
- 获得所有打印机
- 使用C#获得指定打印机所支持的所有PaperSize及PaperName
- 检测局域网所有打印机
- C++怎样获得打印机列表
- 获取所有打印机,设置默认打印机,获取默认打印机
- 枚举本地所有的打印机
- [C++] 如何枚举所有打印机
- VC 得到系统所有打印机
- 获取所有打印机相关信息
- 关于获得打印机dc的问题
- C#枚举系统安装的所有打印机.获取打印机名称
- VC 得到系统所有打印机和默认打印机
- VC 得到系统所有打印机和默认打印机
- struts2获得所有actionlist
- 获得系统所有时区
- 获得系统所有字体
- 获得本周所有日期
- request获得所有参数
- [Android] Android Activity的生命周期
- 国际电子对焊盘要求制定的标准
- 【ACM-Steps1.2】简单字符串处理、简单数学题、进制转换系列8题(一)
- sharepoint 2010 扩展调查字段属性(5)-增加图片支持-多选-查看投票结果
- CUDA 安装
- 获得所有打印机
- [LeetCode] Search for a Range
- 动态数组vector和List
- ubuntu12配置nfs服务
- linux 挂载错误Transport endpoint is not connected
- iOS系统架构
- oracle中CASE 的用法
- Great Forget Wall
- etmvc+jQuery EasyUI Highcharts实现柱状图