在 Windows 上,存在无法从“打印服务器属性”对话框中删除的系统默认打印机表单。有没有其他方法可以删除它们?我们永远不会使用像 Envelope、B5(JIS)、US Std Fanfold 等这样的页面大小,而且我希望让用户(和我自己!)不必滚动浏览一大串噪音。
我们的打印服务器是 Windows Server 2003,如果这有什么不同的话。
在 Windows 上,存在无法从“打印服务器属性”对话框中删除的系统默认打印机表单。有没有其他方法可以删除它们?我们永远不会使用像 Envelope、B5(JIS)、US Std Fanfold 等这样的页面大小,而且我希望让用户(和我自己!)不必滚动浏览一大串噪音。
我们的打印服务器是 Windows Server 2003,如果这有什么不同的话。
我的第一个想法是看看这是否可以通过使用 Windows API 来完成,但是根据这个关于 Win32 Printer Forms API 的网站,它甚至不可能以编程方式删除系统表单:
我的第二个想法是找到一个相对独特的表单名称,例如
US Std Fanfold
并搜索整个注册表。令人惊讶的是,在相当多的地方进入作物。因此,我的建议是构建一个空白的 32 位机器(32 位以避免与影子键混淆)并使用其中一些键去城里。如果你让它工作,它应该很容易转移到你需要做的任何地方。但是,必须说,鉴于微软显然不希望您这样做,您正在为支持和兼容性问题敞开心扉。
标准纸质表单是打印机驱动程序的一部分,只能从相应文件中手动删除。
这是我如何做到这一点的指南:
1.以管理员身份打开CMD。
2.输入“printui /s /t2”(不带引号)
3.在打开的窗口中,选择要删除纸质表格的打印机,然后单击底部的属性。
4.在资源管理器中的指定路径下查找列出的文件(可能是 C:\Windows\System32\spool\drivers\x64\3)
5.制作所有这些文件的备份副本(例如在桌面上的文件夹中)
6.用编辑器打开每个原始文件(一次一个)。如果它包含可读代码,请按 Ctrl+F(打开搜索)并输入名称更显眼的纸质表格之一,应将其删除(例如明信片、法律、信件......)如果没有找到搜索的单词,关闭文件而不保存,然后尝试下一个文件。(在我的情况下,我在物理打印机的扩展名为“.gpd”和“.inx”的文件中找到了它们,我的 PDF-Creator 为“.PPD”)
7.找到条目时:应该有一个段落,列出所有纸质表格的代码块。一些例子:
或者
或者
删除所有不需要的纸质表格的所有此类块。很可能有不止一个段落包含类似的块,所以继续搜索文件并重复,直到找不到。然后保存并关闭文件。
8.在每个文件更改后,打开任何文件(例如Word、Excel...),并检查不需要的纸质表格是否仍然列在该打印机的打印属性中。
-如果仍然存在:返回步骤 6,搜索下一个文件。
- 如果不是:恭喜!(返回第 3 步,如果有更多的打印机要清除不需要的表格)。
-如果有任何问题:用备份覆盖上次编辑的文件。(也许你犯了一个错误,所以再试一次)
希望这可以帮助。干杯!
在打印服务器本身上,表单位于注册表中:
HKLM\System\CurrentControlSet\Control\Print\Forms
(注意:我自己从来没有从这里删除过表单,所以我会先备份密钥,然后再删除和测试结果)。
启动“打印管理”进程 (printmanagement.msc)。
在打印服务器/表单下,您可以删除打印机表单,但不能删除内置表单。
我还没有找到删除内置表单的方法,因为我也不喜欢在该下拉列表中看到所有“噪音”。