Index
M
macroscompiler-approved, 677
for implementing COM interfaces, 559–60
main frame window. See also CMainFrame class
finding, 313–14
menus and, 306
overview, 278
as parent of view window, 334–35
in typical MDI application, 422–23
main function, 3
MakePalette function, 123
managed C++adding support to existing C++ projects, 925–26
ADO.NET and, 981–95
client code, 921–24
creating applications, 914
Web services, 976–78
Managed C++ Applications template, 914
Managed C++ Class Library template, 914, 959
Managed C++ Empty Project template, 914
Managed C++ Web Service template, 914
Managed C Windows Forms Wizard, 929–32
managed code, 912. See also Managed Extensions for C++
managed data, 912
Managed Extensions for C++adding managed C++ support to existing C++ projects, 925–26
list of keywords, 913
overview, 912
reasons to use, 911–12
managed interfaces, 920
managed pointers, 899
managed providersconnecting to databases, 983–85
.NET and, 982–83
overview, 981–83
ManagedCWebFormWizard sample wizardannotating boilerplate source code, 55–59
creating user interface, 53–54
files for Web form, 55–59
overview, 53
manifests, 43, 901
mapping. See mapping modes; message mapping
mapping modesconverting coordinates, 78–79
fixed-scale, 75
MM_ANISOTROPIC, 76–77
MM_HIENGLISH, 75
MM_HIMETRIC, 74, 75, 79–81
MM_ISOTROPIC, 76–77
MM_LOENGLISH, 75
MM_LOMETRIC, 75
MM_TEXT, 73, 74–75, 85
MM_TWIPS, 75
overview, 73–74
variable scale, 76
marshaler, free-threaded, 701
marshaling, 556
maximizing windows, 341
MDI. See Multiple Document Interface
MemberwiseClone function, 894
memorycommitted, 248–49
locking ActiveX controls in, 222–23
managing, 5, 241–55
overview, 241–43
reserved, 248–49
virtual, 245–48
VirtualAlloc function and, 248–49, 253
memory-mapped files, 251–53
menu bar, 278
menu class. See CMenu class
menu editor, 362
menu resourcedefined, 43
editing tool, 279, 286, 287
how to use, 306–7
overview, 279
menusbuilt-in commands, 283–84
CMenu class, 306–7
creating, 279
disabling menu commands, 284
editing, 279
editing commands, 282
enabling menu commands, 284
floating, 307
multiple levels, 279
overview, 279
RC files and, 279
role of keyboard accelerators, 280
shortcut, 307
vs. toolbars, 311–12
update command user interface handlers, 282, 288, 289
message mappingATL vs. MFC, 736
ATL-based, 734–36
extended command processing, 307–8
list of macros, 735
modes, 73–81
overview, 27, 62–63
message processing. See Windows message processing
MessageBox function, 484, 731
MESSAGE_HANDLER macro, 735, 742
MESSAGE_RANGE_HANDLER macro, 735
messages. See Windows message processing
methodsadding to interfaces, 713–14
for calendar control, 216
defined, 213
vs. functions, 213
in .NET classes, 898
in VBA, 575–76
MFC (Microsoft Foundation Class). See MFC Application Wizard; MFC (Microsoft Foundation Class) library
MFC Application Wizardassociating documents with programs, 415–16
basic project files, 278
code wizards and, 71–73
Context-Sensitive Help option, 466, 485–87
creating examples, 71, 82–83, 138, 161, 169
debug vs. release target, 45–46
DLLs and, 501–10
extension vs. regular DLLs, 501–2
generic help topics, 484, 485–87
HTML Help and, 491–92
overview, 12–13, 33
precompiled headers and, 46–48
running, 35–39
user interface, 49–50
writing MFC COM client programs, 562
MFC Class Wizardcreating dialog class, 145–46, 162–63, 170
overview, 562
role in creating modal dialog boxes, 136
MFC (Microsoft Foundation Class) libraryActiveX controls and, 724
application startup steps, 398
application types, 34
built-in menu commands, 283–84
CDocument base class, 278, 349
CFrameWnd base class, 26, 278, 420
choosing as application framework, 17–22
CObject base class, 354–55, 894
CObject root class, 354–55
COleDispatchDriver base class, 581
COM and, 551–62, 673–74
COM interface macros, 559–60
creating Web client with WinInit classes, 844–45
CScrollView base class, 441
CView base class, 34, 40, 349
CWinApp base class, 26, 397–98
CWnd base class, 40, 61
defined, 16
device context, 41, 89–92
DHTML and, 855–60
document-view architecture, 27–29
drag and drop, 660–62
IDispatch implementation, 579–81
message mapping, 27
vs. other development framework options, 17
overview, 17–22
precompiled headers, 46–48
print preview feature, 440
reasons to use, 18–19
relationship to COM, 674–75
reusable classes, 333–48
serialization, 391–97
support for MDI applications, 417–23
text editing tools, 284
typical MDI application, 418–19
UDT support, 645–51
user interfaces, 35
version-by-version feature list, 19–22
virtual functions, 27, 79–80
window subclassing, 358–59
WinInit classes, 839–41
Winsock classes, 820–30
Microsoft Access. See Biblio.mdb file
Microsoft Excel. See Excel
Microsoft Foundation Class. See MFC Application Wizard; MFC (Microsoft Foundation Class) library
Microsoft Help Workshop (HCRTF) utility, 477
Microsoft Internet Information Services (IIS). See IIS
Microsoft .NETmanaged providers, 982–83
overview, 887
role of types, 894–95
Visual C++ .NET and, 16
Microsoft Windowsconfiguring for networking, 819
core memory overview, 241–43
Windows 95/98 address space, 243, 244
Windows NT/2000/XP address space, 245
MIDL utility, 619
MM_ANISOTROPIC mapping mode, 76–77, 112
MM_HIENGLISH mapping mode, 75
MM_HIMETRIC mapping mode, 74, 75, 79–81, 99
MM_ISOTROPIC mapping mode, 76–77
MM_LOENGLISH mapping mode, 75
MM_LOMETRIC mapping mode, 75
MM_TEXT mapping mode, 73, 74–75, 85, 97, 112
MM_TWIPS mapping mode, 75, 99, 100–103, 442, 444, 452
modal dialog boxescreating for existing projects, 136–37
in DLLs, 616
in EXEs, 616
vs. modeless dialog boxes, 135, 167, 168
standard common controls in, 181–94
modeless dialog boxescreating, 167–68
vs. modal dialog boxes, 135, 167, 168
ownership issue, 168
programming, 167–76
sending user-defined messages, 168
ModifyMenu function, 306
monikersasynchronous files, 846–48
overview, 846
vs. WinInit programming, 848
monochrome bitmaps, 114
month calendar control, 196, 201, 203–4
Most Recently Used (MRU) file list, 403, 404
mouse events, 946–47
Mscoree.dll file, 894, 903
Mscorlib.dll file, 894
MTI. See Multiple Top-Level Windows Interface
multi-page printing, 450–55
multi-threaded programmingoverview, 264
starting threads, 264–65
thread blocking, 271–72
thread synchronization and, 269–71
worker threads vs. main thread, 266–67
writing worker thread functions, 264–65
multi-view presentations, 458
Multiple Document Interface (MDI)command message sequence, 281
defined, 34
frame-view window relationship, 420–21
HTML Help and, 492–93
MFC support, 417–23
multiple document templates, 424–25
multiple view class application without splitter window, 466–69
persistent frames in, 348
splitter windows and, 458
treatment of document objects, 419–20
typical MFC application, 418–19
without document-view architecture, 528
multiple document templates, 424–25
multiple dual interfaces, 719–20
multiple inheritance, 672–73, 704
Multiple Top-Level Windows Interface (MTI), 34, 434, 435–36
mutexes, 274