ACC97: Custom ActiveX Control Features Supported in MS Access 97
ID: Q164241
|
The information in this article applies to:
SUMMARY
Advanced: Requires expert coding, interoperability, and multiuser skills.
This article lists the ActiveX control (formerly called OLE Custom Control)
interfaces that Microsoft Access 97 requires, as well as those categories
of interfaces that it does and does not support. This information will help
you to create custom ActiveX controls that you can use in Microsoft Access
97.
NOTE: Microsoft Product Support Services for Microsoft Access will not support
custom ActiveX controls. The only supported ActiveX controls are those that
ship with Microsoft Access, Microsoft Access Developer's Toolkit, and
Microsoft Office 97 Developer Edition Tools. For a list of supported
ActiveX controls, please see the following article in the Microsoft
Knowledge Base:
Q160126 ACC97: Supported ActiveX Controls for Microsoft Access 97
MORE INFORMATION
The ActiveX Component Object Model (COM) is a standard that specifies the
object model and programming requirements that enable COM objects to
interact with other objects in a container application, such as Microsoft
Access.
The Component Object Model defines sets of related functions, called
interfaces, that are common to all COM-based technologies. The functions
within each interface are called methods. Sets of interfaces, called
component categories, identify an entire area of functionality, such as
databinding. When an ActiveX control is installed, it registers those
component categories that it requires, and those that it supports, in the
Windows registry. A container application can check the registry to see if
it supports a control's component category requirements before it offers
that control to a user.
Microsoft Access 97, as an ActiveX control container, requires a control to
support a base set of interfaces. Other interfaces and component categories
are optionally supported in Microsoft Access 97, and still others are not
supported at all. The following information will assist you in creating
ActiveX controls with the features best suited for use in Microsoft Access
97 databases.
ActiveX Interfaces Required by Microsoft Access 97
- IOleObject, which is the principal means by which an embedded control
communicates with the Microsoft Access 97 container and vice versa.
- IPersistStorage, which defines methods that enable Microsoft Access 97
to load and save the control. Microsoft Access 97 uses the methods in
this interface to initialize the control, and to instruct the control to
perform save operations or to release its storage.
- IViewObject, which enables a control to display itself directly. Methods
in this interface, for example, allow you to draw the control on the
screen.
- IOleControl, which provides features for supporting keyboard mnemonics,
ambient properties, and events in control objects.
ActiveX Component Categories Supported in Microsoft Access 97
- Simple Databinding, which is the ability to bind one property of a
control to a field in a table.
- The Controls component category.
ActiveX Component Categories Not Supported in Microsoft Access 97
- Simple Frame Site Containment, which is the ability of an ActiveX
control to contain other controls. Microsoft Access does not support the
ISimpleFrameSite interface, which applies to any control created with
Microsoft Visual Basic Control Creation Edition version 5.0 that has its
ControlContainer property set to True.
- Advanced Databinding, which allow more complex databinding scenarios
than simply binding a single property of a control to a field in a
table.
- The Visual Basic private interfaces, IVBFormat and IVBGetControl.
IVBFormat allows a control to better integrate into the Visual Basic
environment when formatting data; IVBGetControl allows a control to
enumerate other controls on a Visual Basic form.
- Internet aware controls; IServiceProvider and IBindHost interfaces are
not implemented in Microsoft Access.
- Windowless controls, which are controls that do not operate in their own
window, and require Microsoft Access 97 to offer a shared window into
which the control can draw.
NOTE: Many windowless controls are designed to be compatible with
containers that do not support this feature by creating their own
window in those situations. Microsoft Access 97 may be able to use
a windowless control that offers that capability.
- Minimal support controls, which are those ActiveX controls that only
support the IUnknown interface.
REFERENCES
For more information about creating custom ActiveX controls, please refer
to the ActiveX Control and Control Container Guidelines appendix in
Microsoft's ActiveX SDK Core Components for Windows 95 & NT 4.0. You can
download the Microsoft ActiveX SDK from Microsoft's Web site at:
http://www.microsoft.com/workshop/misc/activexsdk/
Additional query words:
ODE
Keywords : kbprg
Version : 97
Platform : WINDOWS
Issue type : kbhowto
|