MFC 7.0 - Differences in W2k and WinXP?

  • Thread starter Thread starter Bugenhagen
  • Start date Start date
B

Bugenhagen

Hello

I developed a simple application using MFC and Visual Studio .NET C++ 2002
(7.0). I developed the app on a computer with Windows 2000 Professional.
Other users of the application viewed the GUI as intended as long as they
were running Win2k operating systems. Users with Windows XP had a deformed
GUI with controls misaligned and incorrect form dimensions. I want to do
another MFC application but I want XP users to be able to use it too. I'm
still developing on a computer running Windows 2000. My question is, what
would cause a mismatch between GUI's on different OS's? My guess is that the
MFC DLL's are slightly different between Win2k and WinXP and maybe I have to
build using a static library instead of a linked one.

TIA
 
You have to ship the MFC70 DLL and install them in your application
directory on either OS, so there must be something else going on.

Ronald Laeremans
Visual C++ team
 
I developed a simple application using MFC and Visual Studio .NET C++ 2002
(7.0). I developed the app on a computer with Windows 2000 Professional.
Other users of the application viewed the GUI as intended as long as they
were running Win2k operating systems. Users with Windows XP had a deformed
GUI with controls misaligned and incorrect form dimensions. I want to do
another MFC application but I want XP users to be able to use it too. I'm
still developing on a computer running Windows 2000. My question is, what
would cause a mismatch between GUI's on different OS's? My guess is that the
MFC DLL's are slightly different between Win2k and WinXP and maybe I have to
build using a static library instead of a linked one.

What font did you use in your dialogs? If the users of the application
do not have the same font installed, the dialogs will default to using
the system font. Windoes automatically resizes the dialog based on the
font, so this will cause the height, width and possibly the aspect ratio
of the dialogs to change.

Jeff Bean
CWC Software
 
Hi,

Bugenhagen said:
Hello

I developed a simple application using MFC and Visual Studio .NET C++ 2002
(7.0). I developed the app on a computer with Windows 2000 Professional.
Other users of the application viewed the GUI as intended as long as they
were running Win2k operating systems. Users with Windows XP had a deformed
GUI with controls misaligned and incorrect form dimensions. I want to do
another MFC application but I want XP users to be able to use it too. I'm
still developing on a computer running Windows 2000. My question is, what
would cause a mismatch between GUI's on different OS's?

Have a look at the DPI setting on the different machines: Control
Panel->Display->Settings->Advanced...->General. The DPI settings influence
the size of the fonts and the size of dialogs and dialog elements is
dependant on the font size.

Another cause might be the theming of controls which lead to bigger window
decorations. Window frames and captions might be bigger than without themes
and if some code does rely on fixed window decorations to place other GUI
elements than this assumption might fail with themes.
My guess is that the
MFC DLL's are slightly different between Win2k and WinXP and maybe I have to
build using a static library instead of a linked one.

No, that is highly unlikely.

Bye,
SvenC
 
Back
Top