where to define "Enable3dControlsStatic();"
-
hi, in order to "Enable3dControlsStatic();" would it be define in project setting as preprocessor definition "_AFXSTATIC" or somewhere else? Thanks!
MFC's AppWizard should have added the call for you automatically. Have you checked the app's
InitInstance()
method? It typically looks like:#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
-
hi, in order to "Enable3dControlsStatic();" would it be define in project setting as preprocessor definition "_AFXSTATIC" or somewhere else? Thanks!
Why are you calling that function? The CTL3D functions haven't been relevant since 1995 are are of no use today. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | 1ClickPicGrabber | NEW~! CP SearchBar v3.0 | C++ Forum FAQ Strange things are afoot at the U+004B U+20DD
-
Why are you calling that function? The CTL3D functions haven't been relevant since 1995 are are of no use today. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | 1ClickPicGrabber | NEW~! CP SearchBar v3.0 | C++ Forum FAQ Strange things are afoot at the U+004B U+20DD
Michael Dunn wrote: The CTL3D functions haven't been relevant since 1995 are are of no use today. How so? I would say the two 3D functions are relevant for all VC++ v6 applications. With MFC v5, I understand it's built in.
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
-
Michael Dunn wrote: The CTL3D functions haven't been relevant since 1995 are are of no use today. How so? I would say the two 3D functions are relevant for all VC++ v6 applications. With MFC v5, I understand it's built in.
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
CTL3D is for giving Windows 3.1 apps a 3-D look. (Only buttons look 3-D in Win3.1) All OSes from 95 on and NT 4 on have the 3-D look natively. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | 1ClickPicGrabber | NEW~! CP SearchBar v3.0 | C++ Forum FAQ Magnae clunes mihi placent, nec possum de hac re mentiri.
-
CTL3D is for giving Windows 3.1 apps a 3-D look. (Only buttons look 3-D in Win3.1) All OSes from 95 on and NT 4 on have the 3-D look natively. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | 1ClickPicGrabber | NEW~! CP SearchBar v3.0 | C++ Forum FAQ Magnae clunes mihi placent, nec possum de hac re mentiri.
I do remember when we had to explicitly load Ctl3d.dll and Ctl3dv2.dll. It was amazing what a little 3D did to an application! So why then does MFC's AppWizard give you the choice of 3D or not when the target platform is Win32? To my knowledge, MFC 1.0 is the only version that worked on 16-bit Windows. So it somewhat makes sense to leave the code in
CWinApp::Enable3dControlsStatic()
alone and let it do its check, but for VC++ v6 to still be concerned with it is what puzzles me.
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
-
I do remember when we had to explicitly load Ctl3d.dll and Ctl3dv2.dll. It was amazing what a little 3D did to an application! So why then does MFC's AppWizard give you the choice of 3D or not when the target platform is Win32? To my knowledge, MFC 1.0 is the only version that worked on 16-bit Windows. So it somewhat makes sense to leave the code in
CWinApp::Enable3dControlsStatic()
alone and let it do its check, but for VC++ v6 to still be concerned with it is what puzzles me.
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
Well, CTL3D32 was used on NT 3.51 (which still had the 3.1 UI) and I guess in 1998 when VC6 came out, people were still writing apps for 3.51. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | 1ClickPicGrabber | NEW~! CP SearchBar v3.0 | C++ Forum FAQ