VC++ README.WRI Parts 9 and 10-C Run-Time Library, Misc.Last reviewed: July 17, 1997Article ID: Q97546 |
1.00
WINDOWS
kbreadme
The information in this article applies to:
SUMMARYThe text below presents information in Parts 9 and 10 of the README.WRI file distributed with Microsoft Visual C++ version 1.0. Setup installs README.WRI in the MSVC\HELP directory. Some Functions in Small- and Medium- Model DLL Libraries Give Unpredictable ResultsThe following C run-time functions give unpredictable results in small and medium model Windows DLL libraries as distributed with Visual C++:
_chsize clock ctime fclose fcloseall freopen _fstat _ftime _fullpath _getcwd _getdcwd _getw localtime mktime _rmtmp _searchenv _stat time tmpfile _utime wcstombs Character Sets Used For Command-Line ArgumentsApplications for Windows and QuickWin applications use different character sets for different command-line arguments. The OEM character set is used to pass the first argument, argv[0], and all subsequent arguments are passed using the ANSI character set.
Part 10: Miscellaneous Notes
Super VGA SupportIf your SuperVGA card does not support VESA BIOS in ROM, and you wish to use the SuperVGA modes under MS-DOS with GRAPHICS.LIB, you may have to install one of the VESA TSRs provided in the BIN\VIDEO directory. See the description of the Run-Time Library function _setvideomode() for more information and warnings about Super VGA Support. Note that the names of the TSRs are incorrectly described in the _setvideomode() documentation. The correct names are listed below. If your video card is not supported by any of these TSRs, contact your dealer, video card manufacturer, or the Video Electronic Standards Association for the appropriate TSR program. The following VESA TSRs are provided with Visual C++, in the MSVC\BIN\VIDEO directory:
VESA Driver Manufacturer ------------------------------------------------------------------- EVRXVESA.COM Everex HTVESA.COM Headland Technologies (formerly Video7) VESA1A1B.EXE Western Digital / Paradise, versions 1A and 1B VESA1C.EXE Western Digital / Paradise, WD90C11 based, version 1C WDVESA.EXE Western Digital / Paradise, WD90C30/31 based, version 1D, and Windows Accelerator cards, version 1DW VESA1D.EXE Dell (see next paragraph for more information) VVESA.COM ATI Technologies Super VGA Support on DELL SystemsIf your machine hangs when using GRAPHICS.LIB, you may be running into a bug in the ROM BIOS of certain DELL models equipped with Western Digital SuperVGA video adapters. Contact DELL to see if a ROM upgrade is available. Meanwhile, there are two workarounds for this problem:
Reducing Non-SuperVGA Program SizeYou can reduce the executable-file size by about 2K for a program that uses functions in GRAPHICS.LIB but doesn't use the SuperVGA modes. To do this, link your program with the NOVESA.OBJ file supplied in the MSVC\LIB directory. If you explicitly name GRAPHICS.LIB in the compile or link command, place it after NOVESA.OBJ on the options string or command line. Use the Disable Extended Dictionary Searches (/NOE) linker option to avoid multiple symbol definitions. Using NOVESA.OBJ will also avoid problems on systems that contain bugs in the VESA ROM BIOS.
Using Object Files Created with Microsoft Pascal version 4.0Object files created using Microsoft Pascal version 4.0 are not compatible with Microsoft Visual C++ 1.0 or the version of LINK provided with it.
STUB NONE Entry in .DEF FileThe STUB entry in a .DEF file must not be NONE. An application built with STUB NONE will lock the system when run from an MS-DOS prompt, and will not load under Windows.
File Base Names Must Be UniqueThe base names used by each source file in your project must be unique. If, for example, your project contains files named MYAPP.C and MYAPP.CPP, there will be a name collision between the MYAPP.SBR files created for each source file.
Network CompatibilityVisual C++ requires a network version that supports the 80386 processor. A network that supports only the 80286 or earlier processor, such as Novell NetWare 2.2 cannot be used.
Using PWB with Visual C++The Programmer's Workbench provided with Microsoft C/C++ version 7.0 can, with some limitations, be used with Visual C++. However, PWB has not been tested with Visual C++. Some PWB features may be incompatible with Visual C++. The only file required to use PWB is PWB.EXE, though the PWBHELP.MXT, PWBC.MXT, PWBUTILS.MXT, and PWBROWSE.MXT extensions may be useful. The PWB.EXE file should be installed in a directory on the PATH environment variable. The extensions should be in the same directory as PWB.EXE. The INIT environment variable should point to your TOOLS.INI file. If you plan to use the help extension, make sure that the HELPFILES environment variable points to the directory containing the help files. The help files provided with Visual C++ cannot be used with PWB. The PWB C extension (PWBC.MXT) does not directly support new compiler options (such as /O1 and /O2). However, you can specify new options from the Additional Options dialog accessible from the Compiler Options dialog. The Visual C++ makefile format is not compatible with the PWB makefile format. You can use a PWB makefile as an External Project in Visual C++, and use a Visual C++ makefile as a Non-PWB Project in PWB. If you plan to run applications for Windows from PWB you will need the WX.EXE and WXSRVR.EXE utilities. Additionally, the VMB.386 file should be listed in the [386Enh] section of your SYSTEM.INI file. If the backup option in PWB is set to Undel, you will also need the UNDEL.EXE, RM.EXE, and EXP.EXE utilities.
|
Additional reference words: 1.00 WX Server SVGA README.WRI
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |