试图从Resources.Image读取或写入受保护的内存
本文关键字:受保护 内存 读取 Resources Image | 更新日期: 2023-09-27 18:05:06
在后台,我使用DLL通过DMA从PCI-e总线池化数据。如果我只运行DLL而不更新状态,我可以运行几个小时。
我收到以下异常:
试图读写受保护的内存。这通常表明其他内存已损坏。
当我尝试从资源中更改按钮图像时收到此错误。
代码:statusButton.Image=Resources.Status_Ok;
或
statusButton.Image=Resources.Status_Fail;
异常不会一直出现!
命令为定时器取(System.Timers.Timer
)
这听起来像是你试图从后台进程(即你的计时器)加载一些东西到你的UI,它总是试图锁定你的主线程来绘画。你需要控制这个锁定,否则你会遇到锁定问题——特别是当你与应用程序交互或者你有长时间运行的主线程操作时。
检查后台工作线程来运行您的DLL - http://www.codeproject.com/Articles/841751/MultiThreading-Using-a-Background-Worker-Csharp -因为这可能会解决您的问题。