gpt4 book ai didi

c# - 错误 : C# Attempted to read or write protected memory

转载 作者:行者123 更新时间:2023-11-30 21:23:12 25 4
gpt4 key购买 nike

我很难纠正这个错误,该应用程序在 4 台不同的机器上进行了测试,并且在其中 3 台机器上运行良好,但是一台 vista PC 在尝试通过 WebBrower1 打开页面时出现此错误

解决这个问题的任何帮助对我都非常有帮助。

System.AccessViolationException occurred
Message="Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
Source="System.Windows.Forms"
StackTrace:
ved System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
ved System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
ved System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
ved System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
ved System.Windows.Forms.Application.Run(Form mainForm)
ved Dispatcher_Tool.Program.Main() i C:\Users\norah\Downloads\Kopi av Dispacher Tool_utvikling\Dispacher Tool\Program.cs:linje 18
InnerException:

更新:

我发现我的代码不是问题所在,我尝试创建一个测试新表单,其中只有一个 webBrowser 和用于打开网页的直接 URL。

网页启动,然后网页上的脚本打开一个辅助页面,该页面似乎试图将我的 webBrowser1 重定向到脚本告诉它的页面。

如果我设置 webBrowser1.AllowNavigation = False 我不会遇到崩溃,所以当脚本尝试在 webBrowser1 中更新时似乎会发生错误,有人知道如何解决这个问题吗?

最佳答案

这是一个 Vista 问题,发生的事情是我的应用程序打开了一个运行 Java 小程序的网页,该网页打开了一个运行 ActiveX 应用程序/脚本的外部 IE 网页。当 ActiveX 脚本尝试更新回 C# 应用程序的内存时,Vista 中的 DEP“数据执行保护”将此操作标记为恶意/病毒,并以 System.AccessViolationException 结束程序:尝试读取或写入 protected 内存。这通常表明其他内存已损坏。”

我的解决办法是用这一行在 Vista 中关闭 DEP“bcdedit.exe/set {current} nx AlwaysOff”

然后重启机器。

关于c# - 错误 : C# Attempted to read or write protected memory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1915408/

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