Ausgangssituation: Im Hauptformular ist ein DataGridView, das als DataSource eine DataTable hat. Je nach aktueller Zeile werden weitere Daten angezeigt. Dazu habe ich das Event RowEnter verwendet. Zusätzlich wird bei einem Doppelklick in einer Zeile des DataGrids ein neues Formular geöffnet, das zeilenspezifisch funktioniert, dazu habe ich das Event
DoubleClick verwendet.
Wenn ich auf eine markierte Zeile des DataGridViews doppelklicke, klappt es, aber wenn ich in eine nicht-markierte Zeile doppelklicke bekomme ich eine Acces Violation Exception, die ich leider nicht verstehe oder nachvollziehen kann. Ich habe nur den Fehlertext des Debuggers und ich hoffe, dass ihr mir weiterhelfen könnt, wo der eigentliche Fehler liegt!
Schaut euch bitte den Fehlertext an und vielleicht habt ihr einen Tip für mich, wie ich die Ursache finde. Natürlich habe ich debuggt, aber der Fehler entsteht erst, nachdem alles korrekt durchlaufen wurde. Es wird sogar alles angezeigt und es dauert ca. 1 bis diese Exception kommt.
Fehlertext:
System.Transactions Critical: 0 : <TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Critical"><TraceIdentifier>http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/Unhandled</TraceIdentifier><Description>Unbehandelte Ausnahme</Description><AppDomain>Userverwaltung.vshost.exe</AppDomain><Exception><ExceptionType>System.AccessV iolationException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.</Message><StackTrace> bei System.Windows.Forms.UnsafeNativeMethods.CallWindo wProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei System.Windows.Forms.NativeWindow.DefWndProc(Messa ge&amp; m)
bei System.Windows.Forms.ToolTip.WndProc(Message&a mp; msg)
bei System.Windows.Forms.ToolTip.ToolTipNativeWindow.W ndProc(Message&amp; m)
bei System.Windows.Forms.NativeWindow.DebuggableCallba ck(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchM essageW(MSG&amp; msg)
bei System.Windows.Forms.Application.ComponentManager. System.Windows.Forms.UnsafeNativeMethods.IMsoCompo nentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(ApplicationCo ntext context)
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.OnRun()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.DoApplicationModel()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.Run(String[] commandLine)
bei Userverwaltung.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
bei Microsoft.VisualStudio.HostingProcess.HostProc.Run UsersAssembly()
bei System.Threading.ThreadHelper.ThreadStart_Context( Object state)
bei System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()</StackTrace><ExceptionString>System.AccessViolation Exception: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
bei System.Windows.Forms.UnsafeNativeMethods.CallWindo wProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei System.Windows.Forms.NativeWindow.DefWndProc(Messa ge&amp; m)
bei System.Windows.Forms.ToolTip.WndProc(Message&a mp; msg)
bei System.Windows.Forms.ToolTip.ToolTipNativeWindow.W ndProc(Message&amp; m)
bei System.Windows.Forms.NativeWindow.DebuggableCallba ck(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchM essageW(MSG&amp; msg)
bei System.Windows.Forms.Application.ComponentManager. System.Windows.Forms.UnsafeNativeMethods.IMsoCompo nentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(ApplicationCo ntext context)
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.OnRun()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.DoApplicationModel()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.Run(String[] commandLine)
bei Userverwaltung.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
bei Microsoft.VisualStudio.HostingProcess.HostProc.Run UsersAssembly()
bei System.Threading.ThreadHelper.ThreadStart_Context( Object state)
bei System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()</ExceptionString></Exception></TraceRecord>
DoubleClick verwendet.
Wenn ich auf eine markierte Zeile des DataGridViews doppelklicke, klappt es, aber wenn ich in eine nicht-markierte Zeile doppelklicke bekomme ich eine Acces Violation Exception, die ich leider nicht verstehe oder nachvollziehen kann. Ich habe nur den Fehlertext des Debuggers und ich hoffe, dass ihr mir weiterhelfen könnt, wo der eigentliche Fehler liegt!
Schaut euch bitte den Fehlertext an und vielleicht habt ihr einen Tip für mich, wie ich die Ursache finde. Natürlich habe ich debuggt, aber der Fehler entsteht erst, nachdem alles korrekt durchlaufen wurde. Es wird sogar alles angezeigt und es dauert ca. 1 bis diese Exception kommt.
Fehlertext:
System.Transactions Critical: 0 : <TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Critical"><TraceIdentifier>http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/Unhandled</TraceIdentifier><Description>Unbehandelte Ausnahme</Description><AppDomain>Userverwaltung.vshost.exe</AppDomain><Exception><ExceptionType>System.AccessV iolationException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.</Message><StackTrace> bei System.Windows.Forms.UnsafeNativeMethods.CallWindo wProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei System.Windows.Forms.NativeWindow.DefWndProc(Messa ge&amp; m)
bei System.Windows.Forms.ToolTip.WndProc(Message&a mp; msg)
bei System.Windows.Forms.ToolTip.ToolTipNativeWindow.W ndProc(Message&amp; m)
bei System.Windows.Forms.NativeWindow.DebuggableCallba ck(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchM essageW(MSG&amp; msg)
bei System.Windows.Forms.Application.ComponentManager. System.Windows.Forms.UnsafeNativeMethods.IMsoCompo nentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(ApplicationCo ntext context)
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.OnRun()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.DoApplicationModel()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.Run(String[] commandLine)
bei Userverwaltung.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
bei Microsoft.VisualStudio.HostingProcess.HostProc.Run UsersAssembly()
bei System.Threading.ThreadHelper.ThreadStart_Context( Object state)
bei System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()</StackTrace><ExceptionString>System.AccessViolation Exception: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist.
bei System.Windows.Forms.UnsafeNativeMethods.CallWindo wProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei System.Windows.Forms.NativeWindow.DefWndProc(Messa ge&amp; m)
bei System.Windows.Forms.ToolTip.WndProc(Message&a mp; msg)
bei System.Windows.Forms.ToolTip.ToolTipNativeWindow.W ndProc(Message&amp; m)
bei System.Windows.Forms.NativeWindow.DebuggableCallba ck(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchM essageW(MSG&amp; msg)
bei System.Windows.Forms.Application.ComponentManager. System.Windows.Forms.UnsafeNativeMethods.IMsoCompo nentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.Run MessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(ApplicationCo ntext context)
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.OnRun()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.DoApplicationModel()
bei Microsoft.VisualBasic.ApplicationServices.WindowsF ormsApplicationBase.Run(String[] commandLine)
bei Userverwaltung.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
bei Microsoft.VisualStudio.HostingProcess.HostProc.Run UsersAssembly()
bei System.Threading.ThreadHelper.ThreadStart_Context( Object state)
bei System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()</ExceptionString></Exception></TraceRecord>
Comment