首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >列出windows打印机设备的默认页面大小

列出windows打印机设备的默认页面大小
EN

Stack Overflow用户
提问于 2013-05-17 05:09:10
回答 1查看 5.8K关注 0票数 1

我希望能够获得windows服务器上所有windows打印机设备的默认页面大小(在本例中为2003)。

这不应该是DefaultPageSize WMI对象的属性,而是通过打印机驱动程序设置的属性。

打印机驱动程序是驱动程序。

EN

回答 1

Stack Overflow用户

发布于 2013-05-17 05:09:10

打印驱动程序提供的打印机配置位于注册表中

代码语言:javascript
运行
复制
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\<printer name>\

这似乎与Win32_Printer WMI对象上的当前和默认纸张大小属性不同。

“默认DevMode”属性是设备的许多设置的二进制表示形式。打开“修改”窗口中的属性,查看ascii表示形式。

为了提取这个字段,我使用了以下方法:

代码语言:javascript
运行
复制
Get-ItemProperty -path Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\* | ForEach-Object{ $_.name, [string]::Join($null, ($_."Default DevMode" | %{ [char][int]$_;})) } > .\printer_driver_properties.txt

将默认的DevMode属性转换为字符数组,然后将该字符数组转换为字符串。

在编码感知编辑器(如notepad.exe )中打开结果文件。根据我的经验,它是unicode双字节字符。

对于每台打印机,应该有一些属性,包括:

  • 名字
  • 分辨率
  • PageSize
  • PageRegion
  • InputSlot

注意:这是一个快速的黑客来检索这些信息。如果有一个更正确的方法来做这件事,或者你想提出一些其他的东西来整理它,我会非常感激的。

此外,如果有资源或规范的这方面的注册表请让我知道!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16601822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档