gpt4 book ai didi

.net - “未经授权的访问异常”- 'Global\.net clr networking'

转载 作者:行者123 更新时间:2023-12-02 12:13:27 24 4
gpt4 key购买 nike

我正在以 Guest 用户身份测试我的应用程序。它因以下错误而崩溃。

“UnauthorizedAccessException”-“Global.net clr 网络”

现在,我知道我可以编辑计算机上的安全策略,以允许信任 guest 下运行的 CLR 代码,但在商业应用程序上应该做什么?

(签名并添加 CAS 属性?)我目前正在阅读整个安全部分,但我时间紧迫,因此任何正确方向的指示都将不胜感激。

编辑:我已将问题追溯到使用 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase 类。如果包含此内容,则会出现错误。我正在寻找添加到 list 或其他方式的内容,以便在安装/运行应用程序时,它会请求适当的权限。我不想要求用户亲自调用 caspol 或其他工具。

环境详细信息: - 应用程序正在使用.NET 3.0 - 操作系统是Vista

以下是这些内容的相关堆栈跟踪:

Unhandled Exception: System.UnauthorizedAccessException: Access to the path 'Glo
bal\.net clr networking' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.Threading.Mutex.<>c__DisplayClass3.<.ctor>b__0(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCl
eanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.Mutex..ctor(Boolean initiallyOwned, String name, Boolean&
createdNew, MutexSecurity mutexSecurity)
at System.Diagnostics.SharedUtils.EnterMutexWithoutGlobal(String mutexName, M
utex& mutex)
at System.Diagnostics.SharedPerformanceCounter.Verify(CategoryEntry* currentC
ategoryPointer)
at System.Diagnostics.SharedPerformanceCounter.FindCategory(CategoryEntry** r
eturnCategoryPointerReference)
at System.Diagnostics.SharedPerformanceCounter.GetCounter(String counterName,
String instanceName, Boolean enableReuse, PerformanceCounterInstanceLifetime li
fetime)
at System.Diagnostics.SharedPerformanceCounter..ctor(String catName, String c
ounterName, String instanceName, PerformanceCounterInstanceLifetime lifetime)
at System.Diagnostics.PerformanceCounter.Initialize()
at System.Diagnostics.PerformanceCounter.set_RawValue(Int64 value)
at System.Net.NetworkingPerfCounters.Initialize()
at System.Net.Configuration.SettingsSectionInternal..ctor(SettingsSection sec
tion)
at System.Net.Configuration.SettingsSectionInternal.get_Section()
at System.Net.Sockets.Socket.InitializeSockets()
at System.Net.Sockets.Socket.get_SupportsIPv4()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.get_
HostName()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Regi
sterChannel(Boolean SecureChannel)
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(
String[] commandLine)

最佳答案

是否可以将其添加到您的 app.config 文件中?

<configuration>
<system.net>
<settings>
<performanceCounters enabled="false" />
</settings>
</system.net>
</configuration>

这将指示网络类不要尝试创建在 guest 帐户下不起作用的性能计数器。

上述设置应该在 .NET Framework 4 及更高版本中有效,但由于错误在早期版本中失败。

关于.net - “未经授权的访问异常”- 'Global\.net clr networking',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/905331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com