mindrayguowei 发表于 2017-7-6 08:57:06

一个看起来像是内存泄漏的问题

最近一段时间,客户的电脑上经常出现系统崩溃的问题, 日志里面记录了如下错误信息:

Exception in Application_ThreadException: Insufficient memory.

at TXTextControl.TextControlCore.?()
   at TXTextControl.TextControlCore.?(? , Int32 , Int32 , Int32 )
   at TXTextControl.TextControl.get_Cursor()
   at System.Windows.Forms.Control.WmSetCursor(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at TXTextControl.TextControl.WndProc(Message& message)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


很难确定究竟是什么操作引起的, 甚至错误的堆栈信息里面没有调用方法.
根据现有的信息能大概判断是做什么操作引起的崩溃吗?

gw0506 发表于 2017-7-6 11:16:29

看不出来,只能说跟Cursor切换有关。
以前遇到个问题,无解的问题啊。即使我猜对了,也不是好消息。

用户有没有从word里面copy表格,然后paste到textcontrol里?

mindrayguowei 发表于 2017-8-8 09:55:46

内存泄漏的问题又出现了, 这次是用TX Text Control Words 直接编辑tx文件的时候就报错了.
操作系统是windows7 64位, 8G内存.
出现内存泄漏这个错误的时候, 系统用了5G多内存.

这个是异常信息
************** 异常文本 **************
System.Exception: Insufficient memory.
(01-2301)
   在 TXTextControl.TextControlCore.ᜂ()
   在 TXTextControl.TextControlCore.ᜀ(ᜊ , Int32 , Int32 , Int32 )
   在 TXTextControl.TextControl.get_CanUndo()
   在 TX_Text_Control_Words.FileHandler.SetDocDirty(Boolean isDirty)
   在 TX_Text_Control_Words.FormMain.TextControl_Changed(Object sender, EventArgs e)
   在 TXTextControl.TextControl.OnChanged(EventArgs e)
   在 TXTextControl.TextControl.ᜁ(Message& )
   在 TXTextControl.TextControl.WndProc(Message& message)
   在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
此外, 偶尔还会出现另外一个错误, 错误信息如下:
System.AccessViolationException: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
   在 ᜀ(ᜇ* , ᜇ* , ញ* , ជ* , ឈ* , ដ* , UInt16 )
   在 ᜀ(ᜁ* , ᜇ* , ᜇ* , ជ* , ឈ* , ញ* , ដ* , ៉* , UInt16 )
   在 ᜀ(ᜁ* , ᜇ* , ᜇ* , Int64 , ជ* , UInt32 )
   在 ᜀ(ᜁ* , ជ* , ᜇ* , ᜆ* )
   在 ᜠ(ᜁ* , UInt32 , UInt64 , Int64 , ជ* )
   在 ᜤ(ᜁ* , UInt32 , UInt64 , Int64 )
   在 ᜣ(ᜁ* , UInt32 , UInt64 , Int64 )
   在 ᜃ(ᜁ* , UInt32 , UInt64 , Int64 )
   在 System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   在 System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
   在 System.Windows.Forms.Control.WndProc(Message& m)
   在 TXTextControl.TextControl.WndProc(Message& message)
   在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


这个又是什么错误?

附件里面是我们编辑的tx文件.
先多开点程序, 多用掉一点内存,然后打开这个文件, 直接在诊断里面输入内容, 很容易就能够重现这个问题

Richard.Ma 发表于 2017-8-8 11:33:53

mindrayguowei 发表于 2017-8-8 09:55
内存泄漏的问题又出现了, 这次是用TX Text Control Words 直接编辑tx文件的时候就报错了.
操作系统是windo ...

我这边的测试环境是win10 64位,满内存下打开程序粘贴了大概十几页的字符才崩溃。这个估计和你那边碰到的问题还不一样。有可能你那边出现的问题只能在win7里面重现。你是输入了很少的字符就出现问题了吗

mindrayguowei 发表于 2017-8-8 13:17:17

是的, 刚开始输入文字就崩溃了, 有时候就是卡死, 有时候会弹出一个错误窗口, 窗口里面的错误信息就是我发的内容

Richard.Ma 发表于 2017-8-8 18:04:52

如果确实是这样的话,应该是tx开发包的bug,问题可能暂时无法解决。我明天找一个win7的电脑重现一下,然后反馈厂商。

另外之前没有出现这个问题,你也可以先看看会不会有其他的因素影响才导致的这个问题。

mindrayguowei 发表于 2017-8-9 10:22:34

之前也出现过的, 只不过之前是在我们的程序里面出现的,在日志里面记录了异常欣喜 这个帖子也是之前出现的时候发的

Richard.Ma 发表于 2017-8-9 18:09:58

上午进行了测试在win7上面没有重现出错误,估计和机器配置等其他的因素有关系,你试试是否在其他的pc上也出现了相同的错误?如果确实是bug 的话,这个我会反馈给厂商

mindrayguowei 发表于 2017-8-11 13:54:25

这个错误已经遇到过不止一次两次了, 最初发这个帖子的时候是在客户那边的异常日志里面发现的, 后来在别的客户那边演示的时候又出现, 然后本地测试客户那边演示的模板也重现这个问题了.
的确不是每个电脑都能重现这个问题, 但是现在发生的频率很高了.
而且更是不知道做具体做什么操作会引起出错, 甚至异常处理里面很难捕捉到这个异常

Richard.Ma 发表于 2017-8-14 11:46:48

我明白您的情况,这个问题我会向厂商反馈。看看他们能否确认问题,或者是已知的bug。
页: [1]
查看完整版本: 一个看起来像是内存泄漏的问题