我的表单上有一个 AxWMPLib.AxWindowsMediaPlayer
。当我关闭表单时,我收到“尝试读取或写入 protected 内存。这通常表明其他内存已损坏。”异常(exception)。隐藏表单可以,但关闭则不行。当组件从表单中删除时,一切都很好。
这是 Winforms .Net3.5。
感谢任何帮助。
最佳答案
这发生在我身上,并且是在按键期间关闭表单时。
如果 WMP 控件有要处理的按键事件,似乎会出现问题。
Form.KeyPreview = True 的示例
Sub Form_KeyDown(e As KeyEventArgs)
AxWindowsMediaPlayer1.Dispose()
End Sub
导致访问冲突。
Sub Form_KeyDown(e As KeyEventArgs)
e.Handled = True
AxWindowsMediaPlayer1.Dispose()
End Sub
彻底关闭,因为按键被阻止到达 WMP 控件。
关闭表单时会发生同样的事情,因为将释放控件。
关于winforms - 当 AxWindowsMediaPlayer 关闭时,出现 AccessViolation 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/685199/