Answers:
尽管您显然必须删除单个文件类型的这些注册表项,但这是我发现的最全面的列表:
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类型的文件中,然后双击运行它。
从这里
您可以使用GPO禁用资源管理器的上下文菜单。
Is it possible to edit the context menu to only disable the print option?
是的,这是可能的,因为上下文菜单(及其所有条目)由简单的注册表项控制。Print
但是,该选项位于多个键中(每种文件类型一个),这使它很难摆脱。如果我回家后我的新游戏没有在等我,也许我会下班后如何做,但是老实说,更好的方法是不理会,和/或严打打败你的用户所以他们闭嘴
您可以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})