是否可以禁用或删除右键单击文件打印选项? 似乎应该可以。
答案1
右键菜单上的这些选项是针对每个文件类型分配的。如果您只对少数几种文件类型感兴趣,则可以从这些文件类型中删除打印命令。
例如,对于 PDF 文档,请转到HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.pdf
并查看默认值。在我的计算机上,该值为AcroExch.Document
。因此,您可以转到HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AcroExch.Document\Shell
并删除打印子项。
答案2
虽然显然必须删除单个文件类型的这些注册表项,但这是我发现的最全面的列表:
Windows Registry Editor Version 5.00
;--------
;-------- Remove "Print" from context menu for image files
;--------
[-HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\print]
;--------
;-------- Remove Print From common text-based files
;--------
[-HKEY_CLASSES_ROOT\SystemFileAssociations\text\shell\print]
[-HKEY_CLASSES_ROOT\batfile\shell\print]
[-HKEY_CLASSES_ROOT\cmdfile\shell\print]
[-HKEY_CLASSES_ROOT\docfile\shell\print]
[-HKEY_CLASSES_ROOT\fonfile\shell\print]
[-HKEY_CLASSES_ROOT\htmlfile\shell\print]
[-HKEY_CLASSES_ROOT\inffile\shell\print]
[-HKEY_CLASSES_ROOT\inifile\shell\print]
[-HKEY_CLASSES_ROOT\JSEFile\shell\print]
[-HKEY_CLASSES_ROOT\JSFile\shell\print]
[-HKEY_CLASSES_ROOT\MSInfo.Document\shell\print]
[-HKEY_CLASSES_ROOT\otffile\shell\print]
[-HKEY_CLASSES_ROOT\pfmfile\shell\print]
[-HKEY_CLASSES_ROOT\regfile\shell\print]
[-HKEY_CLASSES_ROOT\rtffile\shell\print]
[-HKEY_CLASSES_ROOT\ttcfile\shell\print]
[-HKEY_CLASSES_ROOT\ttffile\shell\print]
[-HKEY_CLASSES_ROOT\txtfile\shell\print]
[-HKEY_CLASSES_ROOT\VBEFile\shell\print]
[-HKEY_CLASSES_ROOT\VBSFile\shell\print]
[-HKEY_CLASSES_ROOT\Wordpad.Document.1\shell\print]
[-HKEY_CLASSES_ROOT\WPEDoc\shell\print]
[-HKEY_CLASSES_ROOT\WPSDoc\shell\print]
[-HKEY_CLASSES_ROOT\wrifile\shell\print]
[-HKEY_CLASSES_ROOT\WSFFile\shell\print]
;--------
;-------- Remove Print From Internet Shortcut
;--------
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\InternetShortcut\shell\print]
;--------
;-------- Remove Print From Acrobat-/Foxit-registered .pdf files
;--------
[-HKEY_CLASSES_ROOT\AcroExch.Document.7\shell\print]
[-HKEY_CLASSES_ROOT\FoxitReader.Document\shell\print]
您可以将其复制并粘贴到 .reg 类型的文件中,然后双击运行它。
从这里
答案3
您可以使用 GPO 禁用 Explorer 的上下文菜单。
答案4
您可以使用REG QUERY
来拉回以 结尾的注册表项数组'shell\print'
。使用提升的 PowerShell 提示符,您可以过滤结果并通过管道REG DELETE
将其删除。
# get an array of
$regprint = REG QUERY HKCR /f print /s /e /k | ?{$_ -like '*shell\print'}
# here you can check the array to make sure it is what you want to remove
# and you can pipe it into REG DELETE
$regprint.foreach({REG DELETE $_ /va /f})