Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 327
  • Last Modified:

GDI failure/SelectObject problem

I have a problem with the win32 OWL app that I am writting.

When Codeguard is turned on, I get an error whenever I call the SelectObject parameter of a TDC.

Without Codeguard, I occassionally get program crashes and occassionally SaveDC returns 0. The crashes are always GDI failures.

I have a lot of (sometimes nested) code that looks something like this:

dc.SaveDC( );
dc.SelectObject( GetTitleFont( ) );

...

dc.RestoreFont( );
dc.RestoreDC( );

Any ideas?
0
quinlan
Asked:
quinlan
1 Solution
 
Tommy HuiCommented:
Don't use SaveDC() and RestoreDC() if possible. They are provided for backwards compatability and they break OWL's references on objects. Instead, remove those calls and you should find that things work better. OWL's TDC classes already have the ability to save the DC state and automatically restores it afterwards.


0
 
quinlanAuthor Commented:
What do you mean by "OWL's TDC classes already have the ability to save the DC state and automatically restores it afterwards."
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now