DrawFrameControl() は Font オブジェクトと Brush オブジェクトを作成し、それらを dc に選択し、削除しないようです。(BoundsChecker メッセージによる)。誰かがそのようなことに直面しましたか?
1 に答える
2
さまざまな OS/CRT Dll で同じことを経験しました。パターンの 1 つは、
- ウィンドウの DC (GetDC または GetWindowDC) を取得して、好きな操作を実行します (つまり、互換性のあるメモリ DC を作成します)。
- 作業が完了したら DC を解放します。DC で GDI オブジェクトを選択していなくても、デバイス コンテキストにまだ選択されているオブジェクトがあることを示す Boundschecher 警告が表示されることがあります。
これらの警告は間違いなく私のコードには含まれていないため、一粒の塩でそれらを受け取ることをお勧めします. 通常、私がしていることは、自分のコードへの参照がある BC 警告をクリーンアップすることです。
トピック外: BC は、開発者がコードで修正できない多くの警告をスローします。stl では無数の警告が表示されますが、そのほとんどは「無関係なポインターの比較」です。これは、BC が誤ってそれらを投げているという意味ではありません。通常のアプリで「無関係なポインターを比較する」ことは大惨事になる可能性がありますが、stl 実装を作成した人は自分が何をしているのかを知っており、おそらくそれらのケースを調べたことがあると思います。
于 2008-10-09T11:40:13.433 に答える