在Windows 10中编辑“打开方式”菜单


20

我经常使用PDF拆分合并(PDF SAM),但不想将其设置为默认的PDF处理程序。

当我右键单击PDF并选择Open with时,这些都是我得到的选项。要选择PDF SAM,我必须单击“选择另一个应用程序”并在此处选择“ PDF SAM”。

在此处输入图片说明

我希望PDF SAM直接在“ 打开方式”菜单中。

我查看了以下问题以寻求帮助:

我修改了注册表,将PDF SAM设置为OpenWithList中的第二个选项:

在此处输入图片说明

但这似乎并没有真正改变任何东西。

如果Chrome,Edge和Waterfox根本不在打开方式菜单中的程序列表中,我会很高兴,并且我认为这样做可以释放足够的空间供PDF SAM升级到主列表,但只有Waterfox显示在注册表中的OpenWithList,将其删除似乎没有任何区别。

更新1

遵循注释中所链接问题的建议(在Windows 10中手动添加程序以在Windows中打开),我尝试使用DefaultProgramEditor,但完全失败了。

然后,我将注册表打开到HKCR.pdf \ OpenWithProgids,并从此处删除了Waterfox条目,这确实从“ 打开方式”列表中删除了Waterfox ,但没有将PDFSAM添加到该主列表中:

注册表:
在此处输入图片说明

用菜单打开:
在此处输入图片说明

因此,我们已经找到了如何从主列表中删除不需要的条目,而不是如何向其添加所需条目的方法。

我也发现列表类似的问题:奇怪的是打开列表(与注册表不一致)

并检查以确保PDF SAM包含答案中所建议的两个条目,并且确实:
在此处输入图片说明

更新2

升级Windows 10至内部版本1809后,我注意到PDF SAM现在显示在“打开方式”菜单中。

我尚未测试过以确认Microsoft是否已解决此问题或其他问题是否解决。不过,一旦我确认了这一点,我就会写一个答案。


不确定100%,但是我认为这是2部分修改,您还必须进行编辑/添加HKEY_CLASSES_ROOT\.pdf。检查密钥的添加方式,我认为您可以弄清楚
Narzard

看起来他们终于添加上下文菜单允许这样做,但还没有尝试过亲自- superuser.com/questions/981962/...
panhandel

如果要打开,请在“选择另一个应用程序”中选择PDF SAM,然后打开文件,下次您进入该文件类型的“打开方式”菜单时,它将自动使用列出的PDF SAM进行填充。我只是通过通过“打开方式”菜单用IE打开图像来进行尝试的,下一次填充了图像。这对您不起作用吗?我想不是,因为您显然是高级用户,但是出于好奇,这种情况没有发生。
Dispenser

是的,您可以称我为高级用户。另外,是的,列表不会根据使用情况而更改。
音乐

@ music2myear您是否尝试过默认程序编辑器?检查一下,我认为它具有您需要的确切功能。
Ĭsααc吨իεβöss

Answers:


3

无法将Nitro Pro添加到* .pdf文件的“打开方式”上下文菜单中时,我遇到了完全相同的问题。那是在Win7上进行的,但是看起来好像MS的功能方法在两个操作系统之间都没有改变。

尝试在线上找到的所有建议,我还尝试了NirSoft的OpenWithView。(请参阅http://www.nirsoft.net/utils/open_with_view.html)此工具列出了“ Windows的“打开方式”对话框中的所有可用应用程序”。果然,它也列出了Nitro Pro,但我对此感到怀疑,因为该工具的默认图标未显示在概览屏幕中,而对于所有其他程序却显示了。接下来,再次检查应用程序的路径(这是同一概述中的另一列),我发现它列出了一个旧路径,而不是当前路径。(我曾经在路径中更改了文件夹名称,很惊讶在此概述中找到了它)

使用另一个NirSoft工具MUI Cacheview(请参阅http://www.nirsoft.net/utils/muicache_view.html),它可以“查看和编辑系统上所有MuiCache项的列表”,我发现MUIcache包含Nitro Pro的多个值。不仅是最新的(也是正确的):过时的名称也与之有关。显然,此错误/过时的值是其他应用程序遇到并保留的第一个错误,可以解释程序的异常行为。

一旦OpenWithView正确显示Nitro Pro(即正确的路径,也显示在工具的图标中),我便可以按照已经指示的步骤将其添加到“打开方式”列表中:右键单击pdf文件>>使用>>打开,选择另一个应用程序(或在Win7中选择“选择另一个程序...”)。接下来浏览到正确的位置,选择可执行文件,然后单击“打开”按钮。

我并不是说在OP的情况下也会发生同样的情况,因为“打开方式”菜单的几个元素似乎表现得很奇怪(例如,另请参阅OP提到的另一篇文章“ 奇怪的打开方式与列表(与注册表不一致)”),但是也不排除。NirSoft工具是免费软件且可移植,因此OP可以轻松快速地进行上述尝试。


1

这是一种解决方法,但确实可以。

1)选择“ 打开方式”,然后选择“选择其他应用”

2)选择要添加到“ 打开方式”列表中的应用程序,然后单击 “始终使用此应用程序打开”单选按钮。

该应用程序现在将显示在“ 打开方式”上下文菜单中,因此,如果您不希望它成为默认应用程序,请再次执行该过程,然后选择“ Adob​​e PDF Reader”作为默认应用程序。

多年来,Windows注册表变得有些混乱,很难弄清发生了什么。如果有时间,您可以在注册表中的差异前后​​发布,以查看Win 10在此过程中发生了什么变化。


2
这是行不通的。我按照您描述的方式将PDF SAM设置为默认处理程序,然后再次打开“打开方式”菜单,但该菜单中仍未列出。我将默认处理程序设置回Reader,并且PDF SAM仍未显示在主“打开方式”菜单中。
音乐2

@ music2myear有趣。我的Win10是最新的,我只是尝试过以确保它具有那些结果。它在我身上。它是默认处理程序时会显示吗,而将Reader设置回去时会消失吗?
Dan Sp。

不。这些步骤中的任何时候它都不会显示在列表中。
音乐2

1

对于仍然存在此问题的任何人,解决方案将是

\HKEY_CLASSES_ROOT\Applications\"ProgramName.exe"\SupportedTypes

并添加一个包含要打开的格式的新字符串,例如“ .mp4”


我会检查一下。
music2myear19年

我已经尝试过了,但是没有成功。SupportedTypes是钥匙吗?什么.mp4应该是什么?另一个钥匙?您能否详细说明您的答案?
cdlvcdlv

@cdlvcdlv只需检查其他注册表项以供参考。例如mspaint.exe
塔拉

0

对于那些通过APP-V 5x部署应用程序时仍然存在相同问题的人:

我成功地使Open With上下文菜单中的程序可选(并使用默认值)。上面的解决方案效果很好,但是通常用户不想每次都使用上下文菜单来关联文件类型。由于我们处于受管环境中,并且不会通过SCCM部署自动关联任何内容,因此,一个小的解决方法是:

首先探讨了一些原因,甚至在发布给用户后,甚至HKCR\Applicatons\something.exe无法选择我们的虚拟应用程序Open With。我制作了以下PowerShell脚本,当在add-package中运行时(在计算机上下文中运行)并将所需的数据放入本机注册表中时,将完成技巧。是的,此脚本可能更简单,更透明,但是出于测试目的,初次使用该脚本应该很好:

$ConnectorScriptRootPath = Split-Path -Path ((Get-Variable MyInvocation).Value).MyCommand.Path -Parent

$ConnectorRootPath = Split-Path -Path $ConnectorScriptRootPath -Parent

$OWExecutable = """" + $ConnectorRootPath + "\Root\VFS\ProgramFilesX64\VLC\vlc.exe" + """" + " --started-from-file " + """" + "%1" + """"

New-Item -Path HKLM:\Software\Classes\Applications -Name vlc.exe –Force

New-Item -Path HKLM:\Software\Classes\Applications\vlc.exe -Name shell –Force

New-Item -Path HKLM:\Software\Classes\Applications\vlc.exe\shell -Name Open –Force

New-Item -Path HKLM:\Software\Classes\Applications\vlc.exe\shell\Open -Name Command –Force

New-ItemProperty -Path HKLM:\Software\Classes\Applications\vlc.exe -Name "FriendlyAppName" -Value "VLC Media Player" -PropertyType String -Force

Set-Item -Path HKLM:\Software\Classes\Applications\vlc.exe\shell\Open -Value "Play with VLC Media Player" -Force

Set-Item -Path HKLM:\Software\Classes\Applications\vlc.exe\shell\Open\Command  -Value $OWExecutable -Force

然后将此文件放入脚本目录:

[{AppVPackageRoot}]\..\Scripts\VLC_AddPackage.ps1

排序之后,在程序包编辑器中,我导出了清单文件,并使用TMUrgent解决方案中的App-V清单编辑器打开了文件。在清单编辑器中,我转到scripts/machine scripts/Add-package并设置:

路径:PowerShell.exe
参数:-executionpolicy bypass [{AppVPackageRoot}]\..\Scripts\VLC_AddPackage.ps1
等待:true
超时:30

请务必注意AppvEnvvars以上几点:[{AppVPackageRoot}] 请注意wait:如果脚本出错,并且没有超时,则可能会出现意外情况。

添加(发布)该程序包后,可以从更多应用程序中浏览该程序包,并且可以将Open With用户设置为默认程序包。

这里没有提到,但是在取出包装时要小心;应该有另一个脚本来删除发布时添加的条目。

希望这可以帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.