INFO: Visual C++ 5.0 Readme, Build IssuesLast reviewed: June 27, 1997Article ID: Q165681 |
The information in this article applies to:
SUMMARY
Build IssuesReducing the Size of Header Files for Faster Builds Several Project System and Debugger Methods are Disabled When the BuildFinish Event is Fired Building ATL Projects from the Command Line Can Generate NMAKE Error Help File Names With European Characters Do Not Copy Correctly On Windows 95
MORE INFORMATION
Reducing the Size of Header Files for Faster BuildsTo speed the build process, Visual C++ 5.0 provides the following new defines. Use them to reduce the size of the Win32 header files.
Non-MFC C++ and C applications can define WIN32_EXTRA_LEAN and any applicable NOservice defines, such as NOSOUND (see DevStudio\Vc\include\Windows.h), to reduce their build times. To add these defines, from the Project menu, choose Settings. The Projects settings dialog box appears. Click the C/C++ tab. In the Category list, select Preprocessor. Add the desired definitions to the Preprocessor Definitions box. Several Project System and Debugger Methods are Disabled when the BuildFinish Event is Fired Consider the following VBScript event handler:
Sub Application_BuildFinish(nNumErrors, nNumWarnings) if nNumErrors+nNumWarnings = 0 then ExecuteCommand "ToggleOutputWindow" ExecuteConfiguration end if End SubExecuteConfiguration fails because the BuildFinish event is fired before several project system and debugger commands have been re-enabled. The methods that invoke these commands, like ExecuteConfiguration, will remain disabled between the time that the event is fired and the time the event handler returns. After the Application_BuildFinish event handler returns, these methods will be re-enabled. Workaround
Sub Application_BuildFinish(nNumErrors, nNumWarnings) if nNumErrors+nNumWarnings = 0 then ExecuteCommand "ToggleOutputWindow" end if End SubIn this case Build will fire the BuildFinish event and return control to the MyBuild subroutine at which time the ExecuteConfiguration will be enabled. You can see what other methods are disabled simply by looking at the disabled menu items when a build is in progress.
Building ATL Projects from the Command Line Can Generate NMAKE ErrorBuilding an ATL program from the command line can generate NMAKE error U1073. (This problem does not occur when building ATL samples from within the integrated development environment.) For example, the following command line:
NMAKE /f beeper.mak CFG="beeper - Win32 Release"will generate this error:
NMAKE : fatal error U1073: don't know how to make '".\beeper.h"'From the command line, ATL projects require two passes to build. The first pass directs MIDL to create a header file that is required for the second pass. Workaround: Use the following commands to work around this problem:
nmake /f beeper.mak CFG="beeper - Win32 Release" beeper.h nmake /f beeper.mak CFG="beeper - Win32 Release"Help File Names with European Characters Do Not Copy Correctly on Windows 95 The Help compiler converts the name of the Help file into upper case characters. On Windows 95, this causes problems when the Visual Studio Build System tries to copy a name that contains European characters (such as umlauted characters) to the output directory for the rest of the project build. This is not a problem on Windows NT. Workaround: Add a copy step with the name of the Help file, in upper case, to the custom build rule on the .hpj file in the project.
|
Keywords : kbtlc
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |