1

この質問にはさまざまなバリエーションがありますが、必要な答えが見つかりません。表示する必要があるのはスタック トレースだけです (これは、この質問に投稿された他のスタック トレースと同様です)。トレースからは、コード内のどこでこれが発生しているかを判断できません。その時点で、コードはいくつかの listView コントロールを更新および追加し、いくつかのファイル書き込みを行う必要がありました。この質問に対するこの回答は、リソース、ファイル ロック、アクセス許可、フォント、マルチスレッド、その他さまざまなことから範囲を実行しましたが、開始するのに十分な情報がありません。このスタックが私に伝えていることに誰かが光を当てることができ、しっかりとしたアイデア/答え、または問題を診断またはトラップする方法の戦略を提供できる場合、私は感謝します(これは正しくフォーマットされていると思いますが、謝罪します)もし私がしなかったなら'

System.Runtime.InteropServices.ExternalException was unhandled
  _HResult=-2147467259
  _message=A generic error occurred in GDI+.
  HResult=-2147467259
  IsTransient=false
  Message=A generic error occurred in GDI+.
  Source=System.Drawing
  ErrorCode=-2147467259
  StackTrace:
       at System.Drawing.Graphics.MeasureString(String text, Font font, SizeF layoutArea, StringFormat stringFormat)
       at System.Drawing.Graphics.MeasureString(String text, Font font, Int32 width)
       at System.Windows.Forms.ThreadExceptionDialog..ctor(Exception t)
       at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
       at System.Windows.Forms.Timer.TimerNativeWindow.OnThreadException(Exception e)
       at System.Windows.Forms.NativeWindow.Callback(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(IntPtr 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 Alpha_Strategy_Engine.Program.Main() in c:\Users\Jeffery\Documents\Visual Studio 2013\Projects\Alpha Strategy Engine\Program.cs:line 50
  InnerException: 
4

1 に答える 1

0

スレッドの 1 つが爆撃しているようです。GDI リソースの処理でリークがないか確認しましたか?

GDIリークを検出すると主張するツールは次のとおりです 。 http://www.codeproject.com/Tips/20264/GDI-Leak-Detector-A-special-debugger-to-detect-and

また、GDI ハンドルの量を簡単に表示するためのツール (貧しい人のデバッグ): http://www.nirsoft.net/utils/gdi_handles.html

それに関する msdn ブログ投稿: http://blogs.msdn.com/b/dsui_team/archive/2013/04/23/debugging-a-gdi-resource-leak.aspx

于 2015-07-29T08:50:07.447 に答える