BluePointLilac / ContextMenuManager

🖱️ 纯粹的Windows右键菜单管理程序
https://bluepointlilac.github.io/ContextMenuManager
GNU General Public License v3.0
12.03k stars 611 forks source link

增强功能里面的计算机相关功能对注册表访问被拒绝 #146

Closed jesongit closed 1 year ago

jesongit commented 1 year ago

操作系统W11,不过很奇怪,2个电脑都是新系统,一个没遇到这个报错,另一个遇到了这个报错 管理员运行也不行,截图和详细信息如下 image

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.UnauthorizedAccessException: 对注册表项“HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\FlushDNS”的访问被拒绝。
   在 Microsoft.Win32.RegistryKey.Win32Error(Int32 errorCode, String str)
   在 Microsoft.Win32.RegistryKey.CreateSubKeyInternal(String subkey, RegistryKeyPermissionCheck permissionCheck, Object registrySecurityObj, RegistryOptions registryOptions)
   在 Microsoft.Win32.RegistryKey.CreateSubKey(String subkey)
   在 BluePointLilac.Methods.RegistryEx.CreateSubKey(RegistryKey key, String subKeyName, Boolean writable)
   在 BluePointLilac.Methods.RegistryEx.GetRegistryKey(String regPath, Boolean writable, Boolean create)
   在 ContextMenuManager.Controls.EnhanceShellItem.WriteAttributesValue(XmlNode valueXN, String regPath)
   在 ContextMenuManager.Controls.EnhanceShellItem.WriteSubKeysValue(XmlNode keyXN, String regPath)
   在 BluePointLilac.Controls.MyCheckBox.set_Checked(Boolean value)
   在 BluePointLilac.Controls.MyCheckBox.OnMouseDown(MouseEventArgs e)
   在 System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
   在 System.Windows.Forms.Control.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** 已加载的程序集 **************
mscorlib
    程序集版本:4.0.0.0
    Win32 版本:4.8.9075.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ContextMenuManager
    程序集版本:3.3.3.1
    Win32 版本:3.3.3.1
    基本代码:file:///C:/Users/Jeson/Desktop/ContextMenuManager.NET.4.0.exe
----------------------------------------
System.Windows.Forms
    程序集版本:4.0.0.0
    Win32 版本:4.8.9075.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    程序集版本:4.0.0.0
    Win32 版本:4.8.9065.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Core
    程序集版本:4.0.0.0
    Win32 版本:4.8.9093.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
PresentationFramework
    程序集版本:4.0.0.0
    Win32 版本:4.8.9093.0
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll
----------------------------------------
WindowsBase
    程序集版本:4.0.0.0
    Win32 版本:4.8.9093.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------
PresentationCore
    程序集版本:4.0.0.0
    Win32 版本:4.8.9093.0 built by: NET481REL1LAST_C
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
System.Configuration
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
mscorlib.resources
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Drawing.resources
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing.resources/v4.0_4.0.0.0_zh-Hans_b03f5f7f11d50a3a/System.Drawing.resources.dll
----------------------------------------
System.Windows.Forms.resources
    程序集版本:4.0.0.0
    Win32 版本:4.8.9032.0 built by: NET481REL1
    基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------

************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。

例如:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

启用 JIT 调试后,任何未经处理的异常
都将被发送到在此计算机上注册的 JIT 调试程序,
而不是由此对话框处理。
BluePointLilac commented 1 year ago

计算机和回收站相关的需要一定的权限,可能你两台电脑的用户权限配置不同,程序内有获取注册表项权限的代码,看来在你报错的电脑上没生效

jesongit commented 1 year ago

计算机和回收站相关的需要一定的权限,可能你两台电脑的用户权限配置不同,程序内有获取注册表项权限的代码,看来在你报错的电脑上没生效

请问有办法解决吗?想起来,这边有问题的好像登录的在线用户,那边是断网安装的本地用户,当然不确定是不是这个原因

BluePointLilac commented 1 year ago

计算机和回收站相关的需要一定的权限,可能你两台电脑的用户权限配置不同,程序内有获取注册表项权限的代码,看来在你报错的电脑上没生效

请问有办法解决吗?想起来,这边有问题的好像登录的在线用户,那边是断网安装的本地用户,当然不确定是不是这个原因

可以尝试使用SuperCMD以最高权限打开我的程序

jesongit commented 1 year ago

计算机和回收站相关的需要一定的权限,可能你两台电脑的用户权限配置不同,程序内有获取注册表项权限的代码,看来在你报错的电脑上没生效

请问有办法解决吗?想起来,这边有问题的好像登录的在线用户,那边是断网安装的本地用户,当然不确定是不是这个原因

可以尝试使用SuperCMD以最高权限打开我的程序

感谢大佬回复,自己查过好多提权的方式,但是还是不行,这个可以。感谢感谢感谢!!