?? contents.txt
字號:
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
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -