gpt4 book ai didi

vb.net - 在文本框中输入时出现 AccessViolationException

转载 作者:行者123 更新时间:2023-12-02 06:32:57 25 4
gpt4 key购买 nike

大约一周前,每当我在某个文本框中键入内容时,我正在开发的一个程序就会开始崩溃,并出现 AccessViolationException。我已将其简化为这个测试用例,但我没有主意:

Imports System.Windows.Forms

Public Class Start
Inherits System.Windows.Forms.Form

<STAThread()>
Public Shared Sub Main(args() As String)
Application.EnableVisualStyles()
Application.Run(New Start())
End Sub

Private txtNotes As System.Windows.Forms.TextBox
Public Sub New()
Me.txtNotes = New System.Windows.Forms.TextBox()
Me.txtNotes.Multiline = True
Me.Controls.Add(Me.txtNotes)
End Sub
End Class

当我使用 Visual Studio 构建此程序时,如果我在文本框中键入内容(总是),它就会崩溃。如果我使用 vbc.exe Start.vb/target:winexe/main:Start/out:Start.exe 构建它,它工作正常。

此外,我发现删除这些行中的任何一行都可以防止使用 Visual Studio 崩溃:

Application.EnableVisualStyles()
Me.txtNotes.Multiline = True

我已经完成了 Visual Studio 的修复安装,并使用 sfc.exe 检查是否有损坏的系统文件。我尝试寻找此问题的现有解决方案,但没有找到任何东西。什么可能导致 Visual Studio 构建损坏的可执行文件?是否有一些设置可以做到这一点?

编辑:我目前也在运行 AVG 防病毒软件。我记得在这些崩溃开始时有一个 AVG 更新。根据下面的评论之一,禁用 AVG,然后扫描可执行文件可防止其崩溃。这似乎表明问题出在 AVG 上。

最佳答案

我们的一些客户在 Windows 7 上安装时也遇到同样的问题。我们的产品是带有 WinFoms 和 .net 4.0 的 C#。在 WinForms 下的多行文本框中键入会导致 AccessViolationException 崩溃。您可以将文本粘贴到框中,也可以将其删除,但不要键入。单行文本框就可以了。我们还发现删除 Application.EnableVisualStyles() 可以解决问题。

无需更改代码即可修复此问题的另一种方法是右键单击程序图标并更改兼容性设置以在 Windows 7 上运行该程序。

关于vb.net - 在文本框中输入时出现 AccessViolationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31867987/

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