home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
msdn_vcb
/
samples
/
vc98
/
sdk
/
com
/
inole2
/
contents.txt
< prev
next >
Wrap
Text File
|
1995-05-09
|
38KB
|
985 lines
===========================================================
INSIDE OLE BY KRAIG BROCKSCHMIDT
COMPANION DISC
COPYRIGHT (C) 1995 BY KRAIG BROCKSCHMIDT
===========================================================
This file describes the contents of the directories found on the
sample CD. For complete information about individual source
code files, consult the comments in the files themselves.
ROOT DIRECTORY ON CD
----------------------
CODE\*.* Contains the sample code tree, which should
be copied to C:\INOLE.
16BITOLE.WRI "Notes Concerning 16-Bit OLE" describing
16BITOLE.RTF differences between the book text, which is
written for 32-bit OLE, and 16-bit OLE.
APPA.WRI Appendix A, "An Introduction to C++"
APPA.RTF Which supplements Chapters 1 and 2 for C
programmers who need a familiarity with C++
to read this book effectively.
APPB.WRI "The Details of Standard Marshaling," a
APPB.RTF supplement to Chapter 6.
BUILD.TXT Details about the sample code build process.
CONTENTS.TXT This file you are now reading.
ERRATA.TXT Corrections to the printed text.
README.TXT Read this first!
SETUP.EXE The setup program that will copy the sample
SETUP.INI code to your machine from the CD.
SETUP.TXT
INSTALLATION DIRECTORY FOR SAMPLE CODE:
----------------------------------------
COMMON FILES THAT OCCUR IN MANY DIRECTORIES
File Description
--------------------------------------------
about.dlg Dialog template for About box
client.cpp Client-area object code for samples based on
CLASSLIB (primarily Cosmo, Component Cosmo,
and Patron)
<sample>.ico Program icon
<sample>.rc Resources for the sample
document.cpp Document window object code for all samples based on
CLASSLIB (primariliy Cosmo, Component Cosmo,
and Patron)
document.ico Document window icon for MDI samples based on
CLASSLIB (primariliy Cosmo, Component Cosmo,
and Patron)
gizmo120.bmp Toolbar images for 120dpi
gizmo72.bmp Toolbar images for 72dpi
gizmo96.bmp Toolbar images for 96dpi
makeall.bat Build script for everything in the given
directory and in all subdirectories.
makefile Makefile
precomp.cpp Source file to pull in the right header file
for making a precompiled header.
resource.h Definitions of resource identifiers.
win16.def 16-bit module definitions
win16.def 16-bit registry information
win32.def 32-bit module definitions
win32.def 32-bit registry information
ROOT DIRECTORY
File Description
--------------------------------------------
inole-a.mak Definitions of symbols, compiler flags,
linker flags, and makefile rules.
inole-b.mak Linker scripts
makeall.bat Global build script
mksamp1.bat Default script for building an MDI or SDI
sample, depending on the SDI environment variable.
mksamp2.bat Default script for building a simple sample
mksamp3.bat Default script for building a simple sample in
a second-level directory (one deeper than mksamp2.bat)
BUILD DIRECTORY
Binary EXE and DLL files for all the samples. INOLE.DLL is
the most important, which should be in your PATH when attempting
to run most of the book's samples.
COSMO SAMPLES IN VARIOUS DIRECTORIES
Cosmo is a sample intended to show how you can convert
Windows API-based application features into OLE-based
features, and serves as the primary example for compound
document content objects. It evolves throughout the book
as decsribed below:
Directory Description
--------------------------------------
CHAP01\COSMO Fully functional version of Cosmo written
entirely with the Windows API using no OLE
whatsoever.
CHAP07\COSMO File I/O is convered to use Compound Files.
CHAP12\COSMO Clipboard code is converted to use the OLE
clipboard protocol and data objects.
CHAP13\COSMO Adds OLE Drag & Drop
CHAP14\COSMO Adds OLE Automation support to the entire
application (this chapter's sample is based on
Chapter 12's version)
CHAP18\COSMO Adds OLE Documents support for embedding,
using Chapter 13's version as a base (to avoid
complicating the scene with OLE Automation).
Cosmo is a server for a gaphical "Figure" type
of content.
CHAP21\COSMO Adds OLE Documents support for linking,
improving on Chapter 18's sample.
CHAP23\COSMO Adds in-place activation support to the
Chapter 21 sample
CHAP18\COSMO1.0 Cosmo's 1.0 version, which supported
OLE Documents using OLE version 1. Not
fully supported under 32-bit. Provided
only as an example for conversion and
emulation as described in OLE1.WRI.
COSMO SOURCE FILES
------------------
This table lists Cosmo's specific files (excluding those
that were listed as "common" above), the chapter where the
file first appears, and the purpose of that file.
Appears
File in chapter: Description
----------------------------------------------------------
cosmo.cpp 1 Frame window handling for cosmo.
Also receives the IOleInPlaceFrame
code in Chapter 23.
cosmo.h 1 Main header file
document.cpp 1 Document object code, implements
IOleInPlaceUIWindow in Chapter 23.
polyline.cpp 1 Object code for Polyline window
class, where the figure is drawn
polyline.h 1 Polyline's header file
polywin.cpp 1 Polyline's window procedure
dropsrc.cpp 13 Implementation of drop source object
for OLE Drag & Drop
droptgt.cpp 13 Implementation of drop target object
for OLE Drag & Drop
iclassf.cpp 14,18 Implementation of Cosmo's class factory
object. It appears in Chapter 14 for
OLE Automation. A different one appears
in Chapters 18 and beyond for OLE Documents.
cosmole.h 18 Header file for OLE Documents specifics.
figure.cpp 18 The "embedded" or "linked" content object
implementatation that wraps the Polyline
code into a "Figure" content object.
idataobj.cpp 18 IDataObject implementation for the Figure.
ioleobj.cpp 18 IOleObject implementation for the Figure.
iperstor.cpp 18 IPersistStorage implementation for the
Figure.
iperfile.cpp 21 IPersistFile implementation for the Figure
to support linking.
iipaobj.cpp 23 IOleInPlaceActiveObject implementation for
the Figure's in-place activation.
iipobj.cpp 23 IOleInPlaceObject implementation for
the Figure's in-place activation.
These appear only in Chapter 14:
-----------------------------------
autoapp.cpp "Application" object code for OLE Automation
autobase.cpp Base class implementation used for all OLE Automation
objects in autoapp.cpp, autofig.cpp, and autofigs.cpp.
autofig.cpp "Figure" object code for OLE Automation
autofigs.cpp "Figures" collection object code for OLE Automation
cosmo000.odl Cosmo's ODL script defining its OLE Automation
interfaces.
COMPONENT COSMO SAMPLES IN VARIOUS DIRECTORIES
Component Cosmo is a variation of Cosmo which uses a
COM-based version of a Polyline object, which is an internal
C++ class in Cosmo. It evolves in a similar vein to
Cosmo throughout the early part of the book as decsribed below:
Directory Description
--------------------------------------
CHAP05\COCOSMO First manifestration of Component Cosmo
in the chapter where Polyline is first made
a COM component. Communication between
CoCosmo and Polyline happens through a
custom interface as well as connection points.
CHAP08\COCOSMO Uses IPersist* interfaces to save and load
Polyline data instead of custom interface
members.
CHAP10\COCOSMO Uses IDataObject to exchange data with the
Polyline object instead of custom interface
members.
CHAP12\COCOSMO Converts existing clipboard support to use
the OLE Clipboard.
CHAP13\COCOSMO Adds OLE Drag & Drop.
There are no revisions of Component Cosmo after this, although
a README.TXT in the COCOSMO directory of chapters 19, 21, 23,
and 24 describe simple modifications to make CoCosmo work with
later versions of Polyline.
COCOSMO SOURCE FILES
--------------------
This table lists Component Cosmo's specific files (excluding those
that were listed as "common" above), the chapter where the
file first appears, and the purpose of that file.
Appears
File in chapter: Description
----------------------------------------------------------
cocosmo.cpp 5 Frame object code
cocosmo.h 5 Main application header file
iadvsink.cpp 10 Implementation of a simple object
with IAdviseSink to receive data
change notifications from the Polyline.
dropsrc.cpp 13 Implementation of drop source object
for OLE Drag & Drop
droptgt.cpp 13 Implementation of drop target object
for OLE Drag & Drop
POLYLINE SAMPLES IN VARIOUS DIRECTORIES
Polyline begins life in Chapter 5 as a COM object that is
broken out of Cosmo. Instead of being an internal C++ object,
Polyline becomes a COM object with a custom interface, and
over time we add more interfaces to the object, eventually
making it into a compound document content object and a
partial OLE Control. Various manifestations of Component
Cosmo use versions of this sample, which evolves as described
in the table below:
Directory Description
--------------------------------------
CHAP05\POLYLINE First manifestation of Polyline which implements
a custom interface IPolyline5, as well as
connection point support for its own notification
set, IPolylineAdviseSink5.
CHAP08\POLYLINE Persistence support removed from IPolyline5
which now becomes IPolyline8, and added through
IPersistStorage and IPersistStreamInit.
CHAP10\POLYLINE Data exchange support removed from IPolyline8
which now becomes IPolyline10, and added through
IDataObject and support for sending data changes
through IAdviseSink.
CHAP19\POLYLINE Adds support for OLE Documents embedding with
the interfaces IOleObject, IRunnableObject,
IViewObject2, and those necessary for caching.
CHAP21\POLYLINE Adds support for a container's linking to
embedding feature, which means handling
monikers and implementing IExternalConnection.
CHAP23\POLYLINE Adds in-place activation support with
IOleInPlaceObject and IOleInPlaceActive object,
and is marked OLEMISC_ACTIVATEWHENVISIBLE.
CHAP24\POLYLINE Becomes a partial OLE Control with IOleControl
and IDispatch, and supports its own property page.
POLYLINE SOURCE FILES
----------------------
This table lists Polyline's specific files (excluding those
that were listed as "common" above), the chapter where the
file first appears, and the purpose of that file.
Appears
File in chapter: Description
----------------------------------------------------------
dllpoly.cpp 5 LibMain[32] and initialization code.
iconnpt.cpp 5 Connection point support
ipolylin.cpp 5 Implementation of custom IPolyline*
interfaces
polyline.cpp 5 Core of object code
polyline.h 5 Main header file
polywin.cpp 5 Window procedure for the Polyline
editing window
iperstmi.cpp 8 Implementation of IPersistStreamInit
iperstor.cpp 8 Implementation of IPersistStorage
idataobj.cpp 10 Implementation of IDataObject
irunobj.cpp 19 Implementation of IRunnableObject
iviewobj.cpp 19 Implementation of IViewObject2
ioleobj.cpp 19 Implementation of IOleObject
iextconn.cpp 21 Implementation of IExternalConnection
iipaobj.cpp 23 Implementation of IOleInPlaceActiveObject
iipobj.cpp 23 Implementation of IOleInPlaceObject
control.cpp 24 Code related to being an OLE Control,
including IOleControl and IDispatch
interfaces.
ipoly.h 24 MKTYPLIB-generated header for interfaces
needed for being an OLE Control, including
Polyline's event set.
polyline.odl 24 ODL script for all interfaces including the
event set.
PATRON SAMPLES IN VARIOUS DIRECTORIES
Patron is a sample intended to show how you can build a new
application entirely with OLE features, serving to show new
OLE code (instead of converted Windows API code), and becomes
the primary example of a container for compound document
content objects and OLE Controls. It evolves throughout the
book as decsribed below:
Directory Description
--------------------------------------
CHAP01\PATRON Skeletal version of Patron that does almost
nothing useful whatsoever.
CHAP07\PATRON Adds file I/O capabilities using Compound Files.
CHAP12\PATRON Adds clipboard handling and support for static
content on a page using the OLE Clipboard and
the OLE data cache.
CHAP13\PATRON Adds OLE Drag & Drop
CHAP17\PATRON Adds OLE Documents container support for
embedding.
CHAP20\PATRON Adds OLE Documents container support for
linking.
CHAP21\PATRON Adds OLE Documents support for linking
to embeddings, where Patron becomes a
server for embedded objects within it,
demonstrating complex moniker binding.
CHAP22\PATRON Adds in-place activation container support.
CHAP24\PATRON Adds partial support for OLE Controls,
specifically support for event handling.
PATRON SOURCE FILES
------------------
This table lists Patron's specific files (excluding those
that were listed as "common" above), the chapter where the
file first appears, and the purpose of that file.
Appears
File in chapter: Description
----------------------------------------------------------
page.cpp 1 Code for a single "page" object.
pagemous.cpp 1 Mouse-event handlers for a page.
pages.cpp 1 Manages the collection of pages
in a document.
pages.h 1 Definitions of the pages collection and
the page object class.
pagewin.cpp 1 Windows procedure for the pages
collection.
patron.cpp 1 Frame object code, also IOleInPlaceFrame
implementation in Chapter 23.
patron.h 1 Main application header file.
print.cpp 1 Printer-specific code, kept out of the
way from everything else.
print.dlg 1 Print dialog template.
tenant.cpp 12 "Tenant" class implenentation, where each
tenant is one piece of content or object
on a page. This becomes the site object
for OLE Documents and OLE Controls.
dragdrop.cpp 13 Internal helper functions for Drag & Drop.
dropsrc.cpp 13 Implementation of drop source object
for OLE Drag & Drop
droptgt.cpp 13 Implementation of drop target object
for OLE Drag & Drop
iadvsink.cpp 17 Implementation of IAdviseSink for tenants.
iclisite.cpp 17 Implementation of IOleClientSite for tenants.
tenant.h 17 Header information for tenants, broken
out from pages.h
iuilink.cpp 20 Implementation of IOleUILinkContainer for
use with the Links dialog.
iclassf.cpp 21 Class factory object for linking to
embeddings.
iolecont.cpp 21 Implementation of IOleItemContainer
for both the document and the page objects,
needed to support linking.
iperfile.cpp 21 Implementation of IPersistFile for linking.
iipsite.cpp 22 Implementation of IOleInPlaceSite for
the tenant and in-place activation
iipuiwin.cpp 22 Implementation of IOleInPlaceUIWindow for
the document and in-place activation
ambients.cpp 24 Implementation of IDispatch for
ambient properties.
connect.cpp 24 Code to connect to a control's event
set and retrieve its type information
events.cpp 24 Code for handling arbitrary events and
the events dialog.
events.dlg 24 Dialog template for assigning actions
to events.
iconsite.cpp 24 Implementation of IOleControlSite
CHAPTER BY CHAPTER DIRECTORIES
Specific descriptions of many source files are not given for the
simple samples, as those are described in the book text in detail.
CHAPTER 1 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
PATRON See above
CHAPTER 2 DIRECTORIES
Sample Description
-----------------------------------------
ENUMRECT Demonstration of enumerator objects
MALLOC1 C program demonstrating OLE's memory allocation service
MALLOC2 C++ program demonstrating OLE's memory allocation service
QUERY Demonstration of the implementation of IUnknown and
three techniques for implementing multiple interfaces.
REUSE Demonstraton of object reusability through
containment and aggregation.
CHAPTER 3 DIRECTORIES
Has no samples
CHAPTER 4 DIRECTORIES
Sample Description
-----------------------------------------
CONNECT Demonstration of connection points
CHAPTER 5 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO See above
POLYLINE See above
DKOALA1 Demonstration of a simple in-process component
DKOALA2 Demonstration of a simple in-process component
that supports self-registration
DKOALA3 Demonstration of a simple in-process component
that supports licensing
EKOALA1 Demonstration of a simple out-of-process component
EKOALA2 Demonstration of a simple out-of-process component
that supports self-registration
OBJUSER Client for DKoala1 and EKoala1
LICUSER Client for DKoala3
SELFREG Driver for self-registering components, for use
with DKoala2 and EKoala2
CHAPTER 6 DIRECTORIES
Sample Description
-----------------------------------------
EKOALA3 Simple out-of-process component that demonstrates
message handling.
EKOALA4 Simple component that implements two custom
interfaces, IAnimal and IKoala, using standard
marshaling.
EKOALA5 Simple component that implements custom interfaces
using custom marshaling.
KOALAPRX Custom marshaling proxy object for EKoala5
IANIMAL Standard marshaling interface for IAnimal
IKOALA Standard marshaling interface for IKoala
OBJUSER2 Client for EKoala3 that demonstrates message
handling and the Busy dialog.
OBJUSER3 Client for EKoala4 and EKoala5 to prove that
a client doesn't care about how marshaling is
carried out.
CHAPTER 7 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
FRAGMENT Demonstration of the built-in defragmentation
capabilities of Compound Files.
PATRON See above
CHAPTER 8 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO See above
POLYLINE See above
CHAPTER 9 DIRECTORIES
Sample Description
-----------------------------------------
IDESCRIP Standard marshaling interface for IDescription
LINKSRC A source for linked data that demonstrates
complex moniker binding, using IDescription to
communicate with LinkUser.
LINKUSER A client for LinkSource that binds monikers to
an IDescription interface and displays text.
CHAPTER 10 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO See above
POLYLINE See above
DATAUSER Client for DDataObj and EDataObj, demonstrating
data retrieval and handling of data change
notifications.
DDATAOBJ In-process data object implementation
EDATAOBJ Out-of-process data object implementation identical
to DDataObj useful for comparing performance.
RES Resources shared between DDataObj and EDataObj.
TARGDEV Sample source file for target device structure
handling in OLE's DVTARGETDEVICE and FORMATETC
structures.
CHAPTER 11 DIRECTORIES
Sample Description
-----------------------------------------
FREELOAD Demonstration of using OLE's Data Cache to display,
store, and retrieve bitmaps and metafiles.
CHAPTER 12 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
COCOSMO See above
DATATRAN A "Data Transfer" Component that is used in the
Cosmo and Patron samples from here through the end
of the book. It acts as a data store for use with
data exchange protocols like the cliboard and
OLE Drag & Drop.
PATRON See above
CHAPTER 13 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
COCOSMO See above
PATRON See above
CHAPTER 14 DIRECTORIES
Sample Description
-----------------------------------------
BEEPER1 Variation I on a simple automation object
BEEPER2 Variation II on a simple automation object,
with support for type information
BEEPER3 Variation III on a simple automation object,
with support for error objects
BEEPER3A A correction to Beeper3, see ERRATA.TXT
BEEPER4 Variation III on a simple automation object,
demonstrating dual interfaces.
BEEPER5 Variation III on a simple automation object,
demonstrating OLE's standard dispatch object.
BEEPHELP Shared help files in English and German for
all the Beeper objects
BEEPTEST
DISPTEST DispTest/VB3 test script for Beeper objects
NEWVB Same test script for later versios of VB
COSMO See above
COSMOTST
DISPTEST DispTest/VB3 test script for Cosmo's Automation
implementation
NEWVB Same test script for later versios of VB
CHAPTER 15 DIRECTORIES
Sample Description
-----------------------------------------
AUTOCLI OLE Automation controller for the Beeper objects
of Chapter 14.
SQUARE Another demonstration OLE Automation object called
the SphereSquare.
VBSQUARE
NEWVB Script to drive SphereSquare, for versions of
VB after 3.0.
CHAPTER 16 DIRECTORIES
Sample Description
-----------------------------------------
AUTOCLI2 OLE Automation controller for Beeper6 that will
display property pages and implements
IPropertyNotifySink.
BEEPER6 A Beeper object that supports a property page
(BEEPPROP) and IPropertyNotifySink as an outgoing
interface.
BEEPPROP The property page for Beeper6
CHAPTER 17 DIRECTORIES
Sample Description
-----------------------------------------
PATRON See above
CHAPTER 18 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
COSMO1.0 OLE 1.0 version of Cosmo for demonstration of
conversion and emulation.
CHAPTER 19 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO Contains a README.TXT
HCOSMO An in-process handler for Chapter 18's Cosmo.
POLYLINE See above
CHAPTER 20 DIRECTORIES
Sample Description
-----------------------------------------
LNKASSIS Helper component for a container's dealings with
the Links dialog
PATRON See above
CHAPTER 21 DIRECTORIES
Sample Description
-----------------------------------------
COSMO See above
COCOSMO Contains a README.TXT
POLYLINE See above
PATRON See above
CHAPTER 22 DIRECTORIES
Sample Description
-----------------------------------------
PATRON See above
CHAPTER 23 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO Contains a README.TXT
POLYLINE See above
COSMO See above
CHAPTER 24 DIRECTORIES
Sample Description
-----------------------------------------
COCOSMO Contains a README.TXT
PATRON See above
POLYLINE See above
POLYPROP Property page implementation for Polyline
CHAPTER 25 DIRECTORIES
Has no samples
CLASSLIB DIRECTORY
CLASSLIB is a framework for the Patron, Cosmo, Component Cosmo,
and Freeloader samples, as well as a library of classes used
by the Polyline samples. This is not a very robust or well
tested framework and should not be used for your own development
efforts. It is primarily used to keep the various samples
clean of Windows code, so you can concentrate on more OLE code.
CLASSLIB is statically linked.
File Description
-----------------------------------------
about.dlg Default dialog template for About box
app.ico Defaul program icon
cclient.cpp Client are object base class implementation
cdocumnt.cpp Document object base class implementation
cframe.cpp Frame object base class implementation
chatch.cpp Hatch window class used for in-place activation
samples.
chourgls.cpp CHourglass class to control the hourglass cursor.
classlib.h Library header file.
classlib.rc Default resources
classres.h Resource identifiers
cstatlin.cpp Framework wrapper for the status line control
in INOLE.DLL (see below)
cstrtabl.cpp String table class for managing resource strings.
ctoolbar.cpp Framework wrapper for the toolbar control
in INOLE.DLL (see below)
cwindow.cpp Base window class for other classes
document.ico Default document icon
docwin.cpp Document window procedure
framewin.cpp Frame window procedure
stdgz120.bmp Default 120dpi toolbar images
stdgz72.bmp Default 72dpi toolbar images
stdgz96.bmp Default 96dpi toolbar images
SKEL DIRECTORY
Test program for CLASSLIB that contains only a WinMain.
INC DIRECTORY
Common header files used by multiple samples
File Description
--------------------------------------------
book1632.h Macros to hide 16/32 bit differences
bookguid.h Definition of GUIDs used in chapter samples
bttncur.h Used by INOLE.H
classlib.h Definition of CLASSLIB classes
classres.h Default resource identifiers for CLASSLIB samples
dbgout.h Debugging output macros
gizmobar.h Used by INOLE.H
ianim16.h 16-bit header for IAnimal interface used by
Chapter 6 samples
ianimal.h 32-bit header for IAnimal interface used by
Chapter 6 samples
idescrip.h 32-bit header for IDescription interface used
by Chapter 9 samples
ikoala.h 16-bit header for IKoala interface used by
Chapter 6 samples
ikoala16.h 32-bit header for IKoala interface used by
Chapter 6 samples
inole.h Header file used by nearly all samples that
includes book1632.h, bookguid.h, classlib.h
and classres.h (on demand), windows.h, ole2.h
(and others, on demand), and oledlh.h or ole2ui.h
(on demand).
ipoly5.h Definition of IPolyline5 interface for Chapter 5
ipoly8.h Definition of IPolyline8 interface for Chapter 8
ipoly10.h Definition of IPolyline10 interface for Chapter 10
as well as Chapters 12, 13, 19, 21, 23, and 24.
stastrip.h Used by INOLE.H
INOLE DIRECTORY
Utilities and helper function library for various samples.
This code builds INOLE.DLL.
File Description
--------------------------------------------
ansi.cpp ANSI to Unicode wrappers for OLE APIs
bttncur.c Code for handling toolbar images
bttncuri.h Internal header for bttncur.c
cursors.c Code for handling extra cursors
gizmo.c Code for handling a toolbar
gizmoapi.c Code for handling a toolbar
gizmobar.c Code for handling a toolbar
gizmoint.h Internal header for gizmo*.*
helpers.cpp Miscellaneous helper functions for the samples
inole.cpp LibMain[32] and library initialization
inole.rc Library resources
inoledll.h Internal header for INOLE.DLL
stastrip.c Code for handling a status line control
statint.h Internal header for the status line
uieffect.cpp Functions for generating UI effects
such as shading and hatching.
xform.cpp Functions to transforms between HIMETRIC and other
coordinate systems.
RES DIRECTORY
Contains standard cursor and toolbar bitmap resources
for the INOLE library.
INTERFAC DIRECTORY
Template interface implementations for those you may need in
your work. Those interfaces that are normally not implemented
on custom objects are not included.
Files Interface
---------------------------------------------
iadvsink.* IAdviseSink
iadvsnk2.* IAdviseSink2
iclassf.* IClassFactory
iclassf2.* IClassFactory2
iclisite.* IOleClientSite
iconnpt.* IConnectionPoint
iconnptc.* IConnectionPointContainer
iconsite.* IOleControlSite
icontrol.* IOleControl
idataobj.* IDataObject
idispat.* IDispatch
idropsrc.* IDropSource
idroptgt.* IDropTarget
ienumcon.* IEnumConnections
ienumcp.* IEnumConnectionPoints
ienumfe.* IEnumFORMATETC
ienumstr.* IEnumString
ienumunk.* IEnumUnknown
ienumvrb.* IEnumOLEVERB
iextconn.* IExternalConnection
iipaobj.* IOleInPlaceActiveObject
iipframe.* IOleInPlaceFrame
iipobj.* IOleInPlaceObject
iipsite.* IOleInPlaceSite
iipuiwin.* IOleInPlaceUIWindow
ilockbyt.* ILockBytes
imalloc.* IMalloc
imarshal.* IMarshal
imoniker.* IMoniker
imsgfilt.* IMessageFilter
iolecont.* IOleContainer
ioleobj.* IOleObject
iparsedn.* IParseDisplayName
iperfile.* IPersistFile
iperpbro.* IPerPropertyBrowsing
iperstmi.* IPersistStreamInit
iperstor.* IPersistStorage
iperstrm.* IPersistStream
iproppg.* IPropertyPage
iproppg2.* IPropertyPage2
iproppsi.* IPropertyPageSite
iprovinf.* IProvideClassInfo
irunobj.* IRunnableObject
isimpsit.* ISimpleFrameSite
isppropp.* ISpecifyPropertyPages
iunknown.* IUnknown
iviewob2.* IViewObject2
iviewobj.* IViewObject
LIB DIRECTORY
Import and link libraries used by the samples.
File Description
--------------------------------------------
classmdi.lib Compilation of CLASSLIB for MDI
inole.lib Import library for INOLE.DLL
olesvr32.lib Import library for the OLE 1 DLL
OLESVR32.DLL. This is included because
the Win32 SDK and Visual C++ no longer
include this library as OLE 1 on 32-bits
is not supported. This file is necessary
to compile CHAP18\COSMO1.0.