Annotation of mstools/mfc/readme.txt, revision 1.1.1.2

1.1       root        1: =======================================================================
                      2:                    MICROSOFT (R) FOUNDATION CLASSES
                      3: =======================================================================
                      4: 
                      5: ***********************************************************************
                      6: ***               for Microsoft Windows (R) NT (tm)                 ***
                      7: ***********************************************************************
                      8: 
1.1.1.2 ! root        9:                           BETA OCTOBER 1992
1.1       root       10: 
                     11: This is the Beta Release of the Microsoft (R) Foundation Classes for
                     12: Microsoft Windows NT.  ENJOY!  Release notes can be found at
                     13: the end of this file.
                     14: 
                     15: 
                     16: -----------------------------------------------------------------------
                     17: 
                     18: This subdirectory contains the source code and example code for
                     19: the Microsoft Foundation Class (MFC) C++ library.  The MFC library is
                     20: a C++ Application Framework designed primarily for use in developing 
                     21: applications for Microsoft Windows.  The MFC library is used in
                     22: conjunction with the tools provided with the NT beta release.
                     23: 
                     24: The MFC library consists of two groups of classes.  One set is
                     25: designed for use with Microsoft Windows and includes classes
                     26: tailored for GUI application programming, such as classes for
                     27: windows, dialogs, controls, and menus.  The other classes
                     28: are a set of lower level, non-graphical, general purpose classes
                     29: designed to make it easier to write the part of your application 
                     30: that is independent of the user interface, and includes classes 
                     31: supporting collections, files, memory management, and 
                     32: runtime support.  The Windows classes take advantage of the
                     33: features provided by these general purpose classes.
                     34: 
                     35: The MFC library is designed to be efficient in both space
                     36: and time.  There is a minimal execution time overhead, and
                     37: the entire library, all 60 classes, is under 39K of executable code.
                     38: 
                     39: A complete introduction to the MFC library can be found in the
                     40: Overview section of the "Class Reference" book.
                     41: 
                     42: 
                     43: Windows Classes
                     44: ---------------
                     45: Microsoft Windows and C++ are "object-oriented" and the MFC
                     46: library exploits the Windows operating environment.  The Windows
                     47: C++ classes offer the following features:
                     48: 
                     49:     o  Robust Application Framework for Windows
                     50:     o  Tight coupling to the Windows API
                     51:     o  Significant reduction in API "surface area"
                     52:     o  Complete classes for nearly all Windows objects
                     53:     o  Efficient processing of Windows messages with message maps
                     54:     o  Customizable window classes using C++ inheritance
                     55:     o  Utility classes to make Windows programming easier
                     56: 
                     57: The Windows classes can be used in conjunction with all the standard
                     58: Windows APIs and can easily incorporate existing Windows code.  In
                     59: addition, the MFC Windows classes provide a seamless migration to
                     60: the forthcoming 32-bit Windows API.
                     61: 
                     62: 
                     63: General Purpose Classes
                     64: -----------------------
                     65: The general purpose classes are useful both with and without Windows.
                     66: If you are writing a program that does not use Windows, you can
                     67: still take advantage of the MFC library for your application's
                     68: user interface independent code.  All of the features are optional
                     69: and will incur no runtime overhead if you choose not to use them.  The
                     70: general purpose C++ classes include the following features:
                     71: 
                     72:     o  Common base class for many classes
                     73:     o  Runtime type and metaclass support
                     74:     o  Persistent objects
                     75:     o  Collection classes based on ANSI C++ template syntax
                     76:     o  String class
                     77:     o  Time and Date classes
                     78:     o  File classes
                     79:     o  Exception handling based on ANSI C++ syntax
                     80:     o  Diagnostic and debugging support
                     81: 
                     82: 
                     83: Support for Windows 3.1 features
                     84: --------------------------------
                     85:      The Microsoft Foundation classes provide support for the
                     86:      enhancements provided in Windows version 3.1. The following
                     87:      features are described in technical notes in the
1.1.1.2 ! root       88:      \MSTOOLS\MFC\DOC directory and demonstrated in sample programs in
        !            89:      \MSTOOLS\MFC\SAMPLES. These API functions are documented only in
1.1       root       90:      the Help system. The following list describes the enhancements 
                     91:      that can be used to develop applications for both Windows 3.0 
                     92:      and Windows 3.1.
                     93: 
                     94:      o The development and use of custom controls is supported. In
                     95:        addition, owner draw controls and bitmap buttons are provided. 
                     96:        See TN014.TXT and the sample application CTRLTEST.
                     97: 
                     98:      o To improve robustness, the Microsoft Foundation Class Library 
                     99:        fully supports the STRICT data types defined in the Windows 3.1 
                    100:        interface file, WINDOWS.H.
                    101: 
                    102:      o Common dialog operations are now supported with easily
                    103:        customized classes including CFileDialog (for both File Open
                    104:        and File Save As), CFindReplaceDialog (to implement modeless
                    105:        find and replace), CColorDialog (for color selection),
                    106:        CPrintDialog (for both print setup and print), and
                    107:        CFontDialog (for font selection). These new dialogs are
                    108:        described in TN013.TXT.
                    109: 
                    110:      o Dialog boxes now feature a gray background which is easily 
                    111:        customized.
                    112: 
                    113:      o OLE servers now register themselves at startup so that
                    114:        users do not need to use REGEDIT.EXE.
                    115:     
                    116:      o Using multiple inheritance with Microsoft Foundation
                    117:        classes is demonstrated in the sample application MINSVRMI,
                    118:        a small OLE server that uses multiple inheritance.
                    119: 
                    120:      o For applications that target Windows 3.1 only, the Microsoft 
                    121:        Foundation Class Library supports the most useful new Windows 
                    122:        3.1 API functions and messages.
                    123: 
                    124: 
                    125: Why use the Microsoft Foundation library instead of C and the SDK?
                    126: ------------------------------------------------------------------
                    127: The MFC library has many advantages over using the traditional
                    128: C techniques in the Microsoft Software Development Kit for Windows.
                    129: Some of these advantages include:
                    130: 
                    131:     o  MFC decreases the API surface area; the SDK is a catalog of
                    132:     hundreds of functions, whereas the MFC library takes advantage
                    133:     of the inheritance and polymorphism supported by C++ to organize
                    134:     the Windows APIs in a logical and manageable manner.
                    135: 
                    136:     o  MFC provides a standard Windows application startup; the
                    137:     MFC class CWinApp implements the functionality normally provided
                    138:     in WinMain.
                    139: 
                    140:     o  MFC encapsulates Windows behavior; the class structure
                    141:     and data encapsulation supported by C++ safely hides many
                    142:     of the details that programmers need not concern themselves
                    143:     with.
                    144: 
                    145:     o  MFC handles many details of Windows programming;  gone are
                    146:     the days of registering Window classes or MakeProcInstance.
                    147: 
                    148:     o  MFC provides a object-oriented mechanism for routing
                    149:     Windows messages;  the message map supported by each window
                    150:     C++ class provides a cleaner and less error prone mechanism for
                    151:     handling the mapping of Windows messages to member functions.
                    152:     Messages, commands, and notifications can be handled in this
                    153:     object-oriented manner.
                    154: 
                    155:     o  MFC taps the power of C++.  C++ supports many features that
                    156:     make writing programs easier, such as type safety, encapsulation,
                    157:     inheritance, and polymorphism, that when used in conjunction with
                    158:     MFC provides the best technique for writing Windows programs
                    159:     in C++.
                    160: 
                    161: 
                    162: Usage
                    163: -----
                    164: Source code is provided so that you can build the library target
                    165: that you require.  The file SRC\README.TXT contains instructions for
                    166: building the library.
                    167: 
                    168: Before using the MFC library in your own code be sure that the
                    169: MFC\INCLUDE subdirectory is in your INCLUDE environment variable.
                    170: 
                    171: 
                    172: Subdirectories
                    173: --------------
                    174: The MFC subdirectory contains several subdirectories.  Nearly every
                    175: subdirectory contains a README.TXT file that describes the
                    176: directory's contents.  The following subdirectories are present:
                    177: 
                    178:     DOC\        - MFC technical notes describing implementation details.
                    179:     INCLUDE\    - MFC header files.
                    180:     SRC\        - MFC source files and instructions for building a library.
                    181:     LIB\        - MFC libraries in binary form.
                    182:     SAMPLES\    - MFC sample applications.
                    183: 
                    184: 
                    185: Documentation
                    186: -------------
                    187: The NT release of the MFC library ships with both on-line Quickhelp
                    188: documentation only. No MFC printed documentation is available with this
                    189: release, but the printed MFC documentation provided with the Microsoft
                    190: C/C++ 7.0 compiler can be used 'as-is'.
                    191: 
                    192: If you have any comments or suggestions regarding the Microsoft
                    193: Foundation Classes, please let Microsoft know through the beta program
                    194: liaison.
                    195: 
                    196: 
                    197: NOTE
                    198: ----
                    199: 
                    200: The Microsoft Foundation Classes (MFC) library source code is
                    201: shipped "as is" and is designed for your own use and modification.
                    202: Microsoft Product Support can only offer limited support regarding
                    203: the MFC source code because of this benefit. 
                    204: 
                    205: Microsoft grants you a non-exclusive royalty-free right to use and 
                    206: modify the source code contained in any Microsoft Foundation Classes 
                    207: source code file for purposes of creating a software product.  
                    208: However, you may not include this code in source form (or 
                    209: any modified version of it) within any software product.   
                    210: 
                    211: Notwithstanding the Microsoft End User License Agreement, THIS SOURCE 
                    212: CODE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND.  YOU AGREE THAT 
                    213: NEITHER MICROSOFT NOR ANYONE ELSE INVOLVED IN CREATING, PRODUCING OR 
                    214: DELIVERING THE SOURCE CODE SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, 
                    215: CONSEQUENTIAL, OR INCIDENTAL DAMAGES RELATING TO THE SOURCE CODE.
                    216: 
                    217: 
                    218: Windows NT Release Notes:
                    219: -------------------------
                    220: 
                    221: -- This beta release is a strict superset of the Microsoft C/C++ 7.0 release
                    222:    of MFC.  Any applications written for the MFC C++ Windows API will
                    223:    need only be recompiled using the 32 bit tools in this release in order
                    224:    to run in full 32 bit mode.  For those familiar with MFC, you will
                    225:    note that the sample applications included in this release are 
                    226:    unchanged from the 16 bit release.  This release of MFC can be used
                    227:    interchangeably with the Microsoft C/C++ 7.0 release.
                    228: 
1.1.1.2 ! root      229:    SAMPLES ARE NT VERSION BY DEFAULT: The makefiles for the sample 
        !           230:    applications have been changed to build the NT VERSION BY DEFAULT.  
        !           231:    If you wish to build a Windows version using these sources, you must
        !           232:    define WIN16MFC=1 when building.
        !           233: 
1.1       root      234: -- In order to build the MFC sample applications you should have your
                    235:    environment set as follows:
1.1.1.2 ! root      236:        set LIB=c:\mstools\lib;c:\mstools\mfc\lib
        !           237:        set INCLUDE=c:\mstools\h;c:\mstools\mfc\include
1.1       root      238:    These may also be set on the NMAKE command lines if you wish.  If your
                    239:    installation is on another drive or in another directory, then you
1.1.1.2 ! root      240:    should change c:\mstools accordingly.
1.1       root      241: 
                    242: -- Your PATH must include the Windows SDK Tools and Microsoft C/C++.
                    243: 
1.1.1.2 ! root      244: -- Online documentation is available via WinHelp (MFC10WH.HLP) and is
        !           245:    installed by the SDK setup in MSTOOLS\BIN.
        !           246: 
        !           247:    Online documentation is also available via QuickHelp (QH.EXE).  The .HLP
1.1       root      248:    files are located on the CD-ROM in MSTOOLS\HELP\QH. You must copy
                    249:    the help files and the QuickHelp application (QH.EXE) from the CD-ROM
                    250:    to your target hard disk yourself -- the NT SDK setup program will not
                    251:    install Quickhelp documentation.
                    252: 
                    253: -- This beta release of MFC does not include DLL support.
                    254: 
                    255: -- Do not use the /Zp switch for MFC applications.  If you do some system
                    256:    calls may not work (such as COMMDLG).
                    257: 
                    258: -- The COFF linker emits a warning when it does not extract any modules
                    259:    from a .LIB.  The MFC sample applications will emit this warning which can
                    260:    be ignored.
                    261: 
1.1.1.2 ! root      262: -- Owner draw menu items do not work correctly;  OnMeasureItem is not
        !           263:    called.  This will be fixed.
        !           264: 
1.1       root      265: -- You may experience problems printing with the sample applications that
                    266:    print.
                    267: 
                    268: -- The MULTIPAD sample application currently has an inconsistency with the
                    269:    way it maintains the file MRU menu items.  This will be fixed.
                    270: 
                    271: -- The retail version of the MULTIPAD sample may fault on exit.        This
                    272:    will be fixed in a future release.
                    273: 
                    274: -- The MINSVRMI sample application may fault.  This will be fixed.
                    275: 
                    276: -- CListBox::FindStringExact and CComboBox::FindStringExact do not
                    277:    work correctly.  This will be fixed.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.