Windows 7 64 位上 Notepad++ 的 ShellExecute 失败 (2) 错误

Windows 7 64 位上 Notepad++ 的 ShellExecute 失败 (2) 错误

Windows 7 错误:此命令正确吗?

ShellExecute failed (2): Is this command correct? "C:\Program Files (x86)\Notepad++\notepad++.exe [location of file to edit]

我似乎遇到了一些问题RIGHT CLICK > Edit with Notepad ++。这是在全新安装的 Microsoft Windows 7 Professional 64 位系统上。

我似乎找不到任何关于此错误的提示?或者这只是 Windows 7 配置问题?

答案1

我使用的是 Windows 7 64 位,在不同的 Windows 7 64 位安装中使用 Notepad++ 已有一年多,从未见过这样的错误。您是否尝试过完全卸载、运行 CCleaner,然后再次安装 Notepad++?

答案2

这是当您在 Windows 7 上将 Notepad++ 设置为以管理员身份运行时导致的。

以管理员身份进入注册表并搜索 notepad++.exe。找到下面有(或)HKEY_CLASSES_ROOT条目的键,然后删除整个键。右键单击,您应该会看到不再有该选项。Edit with Notepad++Edit with &Notepad++

现在我们重新创建它:

  1. 去:

    HKEY_CLASSES_ROOT\*\shell
    
  2. 在 shell 下创建一个名为 的新项OpenWithNotepad,并在该项下创建一个名为 的子项command

  3. OpenWithNotepad键中,默认字符串是您希望上下文菜单项的名称。我将其设置为Open with Notepad++

  4. 仍然在OpenWithNotepad键中,创建一个名为的新字符串值icon,并将值设置path-to-notepad++.exe记事本++.exe 的路径应该是完整路径,例如C:\Program Files\Notepad++\notepad++.exe

  5. command键下编辑默认字符串值并将其更改"path-to-notepad++.exe" "%1"记事本++.exe 的路径应该是完整路径,例如C:\Program Files\Notepad++\notepad++.exe

当您右键单击此选项时,它现在应该正确要求您授予 Notepad++ 管理员对文件的访问权限。

您仍然需要转到 notepad++.exe 的属性并将其设置为以管理员身份运行。

答案3

这是一个可能对每个人都有帮助的注册表文件:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]
@="Edit with &Notepad++"
"icon"="C:\\Program Files (x86)\\Notepad++\\Notepad++.exe"

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]
@="\"C:\\Program Files (x86)\\Notepad++\\Notepad++.exe\" \"%1\""

将其复制到记事本中并以 .reg 扩展名保存。关闭记事本并双击该文件。

答案4

我最近升级了 Notepad++,在尝试使用“在 Notepad++ 中编辑”上下文菜单功能时出现“ShellExecute 失败”错误。

虽然我在网上找到了很多关于此错误的报告,但我看到的解决方案都没有在我的计算机上起作用。

以下是我解决问题的步骤:

  1. 在 Notepad++ 程序文件夹中,右键单击 notepad++.exe。
  2. 选择属性菜单项。
  3. 选择“兼容性”选项卡。
  4. 当仅对当前用户启用“以管理员身份运行此程序”时,您可以通过单击复选框来禁用。
  5. 否则,“以管理员身份运行此程序”将对所有用户启用,您必须先单击“更改所有用户的设置”,然后才能禁用该选项。

我为每种场景都创建了一张图片,并将它们附加在下面。

我在两张图片中都突出显示了“以管理员身份运行此程序”,并以绿色突出显示了“更改所有用户的设置”按钮,以表示为所有用户启用该选项的情况。

RunAsAdmin CurrentUser 方案 RunAsAdmin AllUsers 方案

相关内容