BROWSEH

BROWSEH is a inproc OLE Automation Server that browses a type library. It
shows how to create an inproc Automation server and how to use the ITypeLib and
ITypeInfo interfaces to browse a type library.

BROWSEH exposes a number of automation objects that correspond to components
of a type library. This allows an automation controller like BROWSE (shipped
with the OLE 2.02 SDK) to access the properties and methods of these objects to
browse the type library instead of directly using ITypeLib and ITypeInfo. So
BROWSEH is a type library browse helper.

BROWSEH does not support vtable binding. Controllers must use IDispatch to
control this server.

ProgID: BrowseHelper.Browser

See main.cpp for code to create an inproc automation server. See other source
files for code that uses ITypeLib and ITypeInfo to browse various components of
a type library.

To compile: -----------

Requires OLE 2.02 or later. Use the external makefile called makefile to
compile. In Win16, run the WXSRVER.EXE from \OLE2\BIN before running the makefile.
The makefile invokes mktyplib.exe that reads mydisp.odl and browseh.odl and
creates the type libraries, mydisp.tlb and browseh.tlb. It then compliles the
source files.

To run: -------

Change browseh.reg to provide the full path of browseh.dll and browseh.tlb.
Register browseh.reg in the registration database by double-clicking it. Run the
Automation controller BROWSE that uses BROWSEH to browse a type library.

Files: ------ MYDISP.ODL Contains the description of a base class that
implements IDispatch. All automation objects in this server derive from
this class. This the implementation of IDispatch in the base class
to be inherited in the derived classes.
BROWSEH.ODL Object description language that describes the objects that
BROWSEH exposes. TLB.H Header file generated by mktyplib.exe MAKEFILE
Makefile for project. MAIN.CPP Code to create an inproc server.

Other files implement the BROWSEH automation server. For example coclass.cpp
demonstates how to use ITypeInfo and ITypeLib to browse a coclass in a type
library.
================================================================================