{"Попытка чтения или записи защищенной памяти. Это часто указывает на то, что другая память повреждена."} - PullRequest
0 голосов
/ 19 мая 2009

Я построил простую прикладную среду для Unity. То есть Форма и пользовательские элементы управления представлены в формате XML и создаются динамически. У меня есть форма, которая содержит ComboBox, который при закрытии вызывает ошибку, описанную ниже. Проблема не возникает, если ComboBox заменен на элемент управления ListBox.

Некоторые из поисковиков вызвали сообщения о патче, который мне не удалось установить.

{"Попытка чтения или записи защищена объем памяти. Это часто является показателем эта другая память повреждена. "}

StackTrace:

   at System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
   at System.Windows.Forms.Control.DefWndProc(Message& m)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.Run(Form mainForm)
   at DPOSSQL.Program.Main() in C:\VSSData\DPOS SQL\DPOS SQL\Program.cs:line 46
   at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
   at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

Ответы [ 3 ]

0 голосов
/ 19 мая 2009

Я видел эту ошибку при установке нового шрифта в моей системе. Вы установили новый шрифт или программу, которая недавно установила новые шрифты?

Правильно ли работают другие программы .net? Если нет, то лучше всего сделать ставку на переустановку .NET Framework.

0 голосов
/ 20 января 2010

Просто нажмите эту кнопку в Windows XP, когда пытаетесь переключить системный дисплей на «Extra Large Fonts», когда мое приложение .NET работало.

Кажется вероятным, что это связано с искаженным шрифтом или схожим.

Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Source: System.Windows.Forms
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
0 голосов
/ 19 мая 2009

Я видел подобные вещи, когда элемент управления использует стиль XP / Vista, а затем запускается на более старой версии Windows.

...