Index
I
IAccessor interface, 779, 781, 782
IAccessorImpl interface, 779, 782
IAdviseSink interface, 645
IClassFactory interfaceCreateInstance function, 541–42, 578, 599, 611, 621
overview, 541
ICO files, 187–88, 189
IColumnsInfo interface, 779, 781
IColumnsRowset interface, 779, 781
ICommand interface, 779
ICommandPrepare interface, 779
ICommandProperties interface, 779
ICommandText interface, 779
ICommandWithParameters interface, 779
IConnectionPoint interface, 761
IConnectionPointContainer interface, 729, 761, 766, 781
IConnectionPointContainerImpl interface, 766
icons, 43, 144, 187–88, 189, 190
IConvertType interface, 779, 781
IDataAdapter interface, 982, 990
IDataObject interfaceClipboard support, 642
DAdvise function, 645
EnumFormatEtc function, 644
GetData function, 644–45, 647, 649
member functions, 644–45
overview, 641–42, 729
QueryGetData function, 645
SetData function, 645
IDataParameter interface, 982
IDataReader interface, 982, 988
IDataRecord interface, 982
IDbCommand interface, 982, 986
IDbConnection interface, 982, 984
IDBCreateCommand interface, 780
IDBCreateSession interface, 778, 782
IDBDataSourceAdmin interface, 778
IDBInfo interface, 778
IDBInitialize interface, 778
IDBProperties interface, 778
IDBSchemaRowset interface, 780
_identifier keyword, 913
IDispatch interfaceActiveX controls and, 724
ATL and, 702, 716–17, 729
as base class, 702
GetIDsOfNames function, 577, 582, 639
Invoke method, 576, 577, 581, 582, 589, 639, 760, 763
limitations, 639–40
MFC implementation, 579
overview, 576–77
IDL filesATL and, 711–13
defined, 9
overview, 617–18
IDropSource interface, 660
IDropTarget interface, 660
IGetDataSource interface, 780
IHttpModule interface, 971
IIndexDefinition interface, 780
IIS (Internet Information Services)directory issues, 868–69
log entries, 870
overview, 865
role in ASP.NET, 955–56
role in HTTP requests, 969
running, 866
security issues, 866–68
testing, 870
ILDASM. See Intermediate Language Disassembler
image files, 52
image list, 187–88, 190
IMarshal interface, 701
Implement Connection Point Wizard, 763
IMPLEMENT_DYNAMIC macro, 357, 360
IMPLEMENT_DYNCREATE macro, 357, 397, 399
IMPLEMENT_SERIAL macro, 357, 397
implicit linking, 497–98
#import directive, 583–84, 632
imported functions, 496–97
in-memory datasets, 991–93
in-process components. See DLLs
inches, logical vs. physical, 98–99
include files, 880–81
indexed properties, 575–76, 612, 614, 615
inheritancevs. aggregation, 568–69
vs. containment, 568
multiple, 672–73, 704
overview, 533–38
INI files, 336, 338
Initial Status Bar, 309
InitializeCriticalSection function, 272
InitInstance functionin MDI applications, 419, 421
in MFC library application startup, 398, 416
in SDI applications, 398, 399
Windows Registry and, 338, 415
insertion operator (<<), 393, 394
InsertMenu function, 306
installing ActiveX controls, 214–15
instance handles, 499–500
int type, 394
IntelliSense, 900–901
_interface keyword, 913
interface-based programming, 898, 920
INTERFACE_PART macro, 559
interfaces, COM. See also managed interfaces; user interfaces
adding methods, 713–14
in C and C++, 538
dual, 639–40, 714–15, 719–20
inheritance and, 672–73
IUnknown as core COM interface, 669–71
IUnknown interface overview, 538–41, 889
list of those needed for ActiveX controls, 729
MFC macros for, 559–60
role in COM, 667–69
InterlockedIncrement function, 266
Intermediate Language (IL)in assemblies, 900
relationship to programming languages, 910–11
role in CLR, 903–4
Intermediate Language Disassembler (ILDASM), 918–19
Internet. See also Microsoft .NET
as development platform, 953–54
elements, 806–17
vs. intranets, 817
overview, 806–17
Web site evolution, 954–55
Internet Information Services. See IIS
Internet Protocol addresses, 196, 201, 204, 809–10
Internet Server Application Programming Interface (ISAPI). See ISAPI server extensions
Internet Service Manager, 866
InterNIC, 812, 814
interoperability, 907–8
intranetsconfiguring Windows, 819
creating, 817–34
vs. Internet, 817
network hardware for, 818
NTFS vs. FAT file systems, 818
role of hosts, 819
testing, 819
Invalidate function, 40
InvalidateRect function, 40, 64, 66
Invoke method, 576, 577, 581, 582, 589, 639, 760, 763
InvokeHelper function, 220, 582
IOleControl interface, 729
IOleInPlaceActiveObject interface, 729
IOleInPlaceObjectWindowless interface, 729
IOleObject interface, 729, 746, 753
IOpenRowset interface, 780
IP (Internet Protocol), 807–8
IP addresses, 196, 201, 204, 809–10
IPersist interface, 778
IPersistFile interface, 778
IPersistStrange interface, 729
IPersistStreamInit interface, 729, 760
IPropertyNotifySink interface, 731
IPropertyNotifySinkCP interface, 729
IPropertyPage interface, 748, 751, 752, 756, 758
IPropertyPageImpl interface, 750
IPropertyPageSite interface, 751–52, 756
IProvideClassInfo2 interface, 729
IPv6 protocol, 810
IQuickActivate interface, 729
IRowset interface, 781, 782
IRowsetChange interface, 781
IRowsetIdentity interface, 781
IRowsetInfo interface, 781, 782
IRowsetLocate interface, 781
IRowsetResynch interface, 781
IRowsetScroll interface, 781
IRowsetUpdate interface, 781
ISAPI server extensionsCGI and, 870–71
GET requests, 871–73
overview, 870
role of DLLS, 873
what they do, 955
IsDataAvailable function, 648
ISessionProperties interface, 780
ISpecifyPropertyPages interface, 729, 748, 756
IsPrinting function, 441
IsStoring function, 393
ISupportErrorInfo interface, 700–701, 779, 780, 781
IsUserRegistered function, 879–80
ITableDefinition interface, 780
ITransactionJoin interface, 780
ITransactionLocal interface, 780
ITransactionObject interface, 780
IUnknown interfaceActiveX controls and, 724
AddRef method, 541, 669, 692–93, 889
ATL and, 703
vs. CCmdTarget class, 673
component versioning and, 901–2
as core COM interface, 669–71
overview, 538–40, 889
QueryInterface method, 538–40, 669, 670, 889
Release method, 541, 669, 692–93, 889
IViewObjectEx interface, 729, 739
IViewObjectExImpl interface, 739