:Base del5COM.hlp>main
:Title Developing COM-based applications

1 Developing COM-based Applications
2 COM basics
3 Overview of COM Technologies=oocOverviewOfCOMTechnologies
3 Parts of a COM application=oocPartsOfACOMApplication
3 COM interfaces=oocCOMInterfaces
3 The fundamental COM interface, IUnknown=oocTheFundamentalCOMInterfaceIUnknown
3 COM interface pointers=oocCOMInterfacePointers
3 COM servers=oocCOMServers
3 CoClasses and class factories=oocCoClassesAndClassFactories
3 In-process, out-of-process, and remote servers=oocInProcessOutofProcessandRemoteServers
3 The marshaling mechanism=oocthemarshalingmechanism
3 COM clients=oocCOMClients
3 COM extensions=oocCOMExtensions
3 Automation=oocAutomationServersandControllers
3 ActiveX controls=oocActiveXControls
3 Type libraries=oocTypeLibraries
3 Active Server Pages=oocActiveServerPages
3 Active Documents=oocActiveDocuments
3 Visual cross-process objects=oocVisualCrossprocessObjects
3 Implementing COM objects with Wizards=oocImplementingComObjectswithWizards
2 Creating a simple COM object
3 Creating a simple COM object: Overview=comCreatingAComObject
3 Designing a COM object=comDesigningaComObject
3 Creating a COM object with the COM object wizard=comCreatingaComObjectWiththeCOMObjectwizard
3 COM object instancing types=comComObjectInstancingTypes
3 Choosing a threading model=comChoosingathreadingmodel
3 Registering a COM object=comRegisteringACOMObject
3 Testing a COM object=comTestingACOMObject
2 Creating an Automation controller
3 Creating an Automation controller: Overview=cacCreatingAnAutomationController
3 Creating an Automation controller by importing a type library=cacCreatingAnAutomationControllerByImportingATypeLibrary
3 Handling events in an Automation Controller=cacHandlingEventsInAnAutomationController
3 Connecting to and disconnecting from a server=cacConnectingToAndDisconnectingFromAServer
3 Controlling an Automation server using a Dual interface=cacControllingAnAutomationServerWithADualInterface
3 Controlling an Automation server using a dispatch interface=cacControllingAnAutomationServerWithADispatchInterface
3 Example: Printing a document with Microsoft Word=cacExamplePrintingADocumentWithMicrosoftWord
2 Creating an Automation server
3 Creating an Automation server: Overview=casCreatingAnAutomationServer
3 Creating an Automation object for an application=casCreatingAnAutomationObjectForAnApplication
3 Managing events in your Automation object=casManagingEventsinYourAutomationObject
3 Exposing an application's properties, methods, and events=casExposingAnApplicationsPropertiesandMethodsforAutomation
3 Registering an application as an Automation server=casRegisteringAnApplicationAsAnAutomationServer
3 Testing and debugging the application=casTestingAndDebuggingTheApplication
3 Automation interfaces=casAutomationInterfaces
3 Dual interfaces=casDualInterfaces
3 Dispatch interfaces=casDispatchInterfaces
3 Custom interfaces=casCustomInterfaces
3 Marshaling data=casMarshalingData
2 Creating an ActiveX control
3 Creating an ActiveX control: Overview=caxCreatingAnActiveXControl
3 Elements of an ActiveX control=caxElementsofanActiveXControl
3 Designing an ActiveX control=caxDesigningAnActiveXControl
3 Generating an ActiveX control from a VCL control=caxGeneratingAnActiveXControlFromAVCLControl
3 Licensing ActiveX controls=caxLicensingActiveXControls
3 Generating an ActiveX control based on a VCL form=caxGeneratingAnActiveXControlBasedOnAVCLForm
3 Working with properties, methods, and events in an ActiveX control=caxWorkingwithpropertiesmethodsandeventsinanActiveXcontrol
3 Adding additional properties, methods, and events=caxAddingAdditionalPropertiesMethodsAndEvents
3 How Delphi adds properties=caxHowDelphiAddsProperties
3 How Delphi adds methods=caxHowDelphiAddsMethods
3 How Delphi adds events=caxHowDelphiAddsEvents
3 Enabling simple data binding with the type library=caxenablingsimpledatabindingwithTheTypeLibrary
3 Enabling simple data binding of ActiveX controls in the Delphi container=caxenablingsimpledatabindingofActiveXcontrolsinthecontainer
3 Creating a property page for an ActiveX control=caxCreatingAPropertyPageForAnActiveXControl
3 Creating a new property page=caxCreatingANewPropertyPage
3 Adding controls to a property page=caxAddingControlsToAPropertyPage
3 Associating property page controls with ActiveX control properties=caxAssociatingPropertyPageControlsWithActiveXControlProperties
3 Updating the property page=caxUpdatingThePropertyPage
3 Updating the object=caxUpdatingTheObject
3 Connecting a property page to an ActiveX control=caxConnectingAPropertyPageToAnActiveXControl
3 Exposing properties of an ActiveX control=caxPublishingPropertiesOfAnActiveXControl
3 Registering an ActiveX control=caxRegisteringAnActiveXControl
3 Testing an ActiveX control=caxTestingAnActiveXControl
3 Deploying an ActiveX control on the Web=caxDeployingAnActiveXControlOnTheWeb
3 Setting Web deployment options=caxSettingWebDeploymentOptions
3 Option combinations=caxOptionCombinations
3 Project tab=caxProjectTab
3 Packages tab=caxPackagestab
3 Additional Files tab=caxAdditionalFilestab
2 Creating an Active Server Page
3 Creating Active Server Pages: Overview=aspCreatingActiveServerPages
3 Creating an Active Server Page object=aspCreatingAnActiveServerPageObject
3 Creating ASPs for in-process or out-of-process servers=aspCreatingASPsForInProcessOrOutofProcessServers
3 Registering an application as an Active Server Page object=aspRegisteringAnApplicationAsAmActiveServerpageObject
3 Testing and debugging the Active Server Page application=aspTestingAndDebuggingTheActiveServerPageApplication
2 Working with type libraries
3 Working with type libraries: Overview=wtlWorkingWithTypeLibraries
3 Type Library editor=wtlTypeLibraryEditor
3 Toolbar=wtlToolbar
3 Object list pane=wtlObjectListPane
3 Status bar=wtlStatusBar
3 Pages of type information=wtlPagesOfTypeInformation
3 Type library information=wtlTypeLibraryInfo
3 Interface pages=wtlInterfacePages
3 Attributes page for an interface=wtlAttributesPageForAnInterface
3 Interface flags=wtlInterfaceFlags
3 Interface members=wtlInterfaceMembers
3 Type Library editor, Interface methods;Interface methods=wtlInterfaceMethods
3 Interface properties=wtlInterfaceProperties
3 Property and method parameters page=wtlPropertyAndMethodParametersPage
3 Dispatch type information=wtlDispatchTypeInformation
3 Attributes page for dispatch=wtlAttributesPageForDispatch
3 Dispatch flags page=wtlDispatchFlagsPage
3 Dispatch members=wtlDispatchMembers
3 CoClass Pages=wtlCoClassPages
3 Attributes for a CoClass=wtlCoClassAttributesPage
3 CoClass Implements page=wtlCoClassImplementsPage
3 CoClass flags=wtlCoClassFlags
3 Enumeration type information=wtlEnumerationTypeInformation
3 Attributes page for an enum=wtlAttributesPageForAnEnum
3 Enumeration members=wtlEnumerationMembers
3 Alias type information=wtlAliasTypeInformation
3 Record type information=wtlRecordTypeInformation
3 Union type information=wtlUnionTypeInformation
3 Module type information=wtlModuleTypeInformation
3 Creating new type libraries=wtlCreatingNewTypeLibraries
3 Valid types=wtlValidTypes
3 SafeArrays=wtlSafeArrays
3 Using Object Pascal or IDL syntax=wtlUsingObjectPascalorIDLsyntax
3 Creating a new type library=wtlCreatingANewTypeLibrary
3 Opening an existing type library=wtlOpeningAnExistingTypeLibrary
3 Adding an interface to the type library=wtlAddingAnInterfaceToTheTypeLibrary
3 Adding properties and methods to the type library=wtlAddingPropertiesAndMethodsToTheTypeLibrary
3 Adding a CoClass to the type library=wtlAddingACoClassToTheTypeLibrary
3 Adding an enumeration to the type library=wtlAddingAnEnumerationToTheTypeLibrary
3 Saving and registering type library information=wtlSavingAndRegisteringTypeLibraryInformation
3 Apply Updates dialog=wtlApplyUpdatesDialog
3 Saving a type library=wtlSavingATypeLibrary
3 Refreshing the type library=wtlRefreshingTheTypeLibrary
3 Registering the type library=wtlRegisteringTheTypeLibrary
3 Exporting an IDL file=wtlExportingAnIDLFile
3 Deploying type libraries=wtlDeployingTypeLibraries
2 Creating MTS objects
3 Creating MTS objects: Overview=mtsCreatingMTSAutomationobjects
3 Microsoft Transaction Server (MTS) components=oocMicrosoftTransactionServercomponents
3 Managing resources with just-in-time activation and resource pooling=mtsManagingresourceswithjustintimeactivationandresourcepooling
3 MTS transaction support=mtsMtsTransactionsupport
3 Role-based security=mtsRolebasedsecurity
3 Resource dispensers=mtsResourceDispensers
3 Base clients and MTS components=mtsBaseClientsandMTScomponents
3 MTS and underlying technologies, COM and DCOM=mtsMtsUnderlyingtechnologiesCOMandDCOM
3 Overview of creating MTS objects=mtsOverviewofCreatingMTSAutomationObjects
3 Using the MTS Object wizard=mtsUsingtheMTSAutomationWizard
3 Choosing a threading model for an MTS object=mtsChoosingAThreadingModelAnMTSAutomationObject
3 Setting the transaction attribute=mtsSettingTheTransactionAttribute
3 Passing object references=mtsPassingObjectReferences
3 Setting up a transaction object on the client side=mtsSettingupatransctionobjectntheclientside
3 Setting up a transaction object on the server side=mtsSettingupatransctionobjectntheserverside
3 Debugging and testing MTS objects=mtsDebuggingandTestingMTSObjects
3 Installing MTS objects into an MTS package=mtsInstallingMTSObjectsIntoAnMTSPackage
3 Administering MTS objects with the MTS Explorer=mtsAdministeringMTSObjectswiththeMTSExplorer
3 Using MTS documentation=mtsUsingMTSdocumentation

