Support for OLE/COM

Required:
The application must be an OLE container or object server. Note that although an application can be both a server and a container, it does not have to be.

Tip: If you want to host Java™ or ActiveX controls in your application, you should choose to be an OLE container.

Recommended:
It is recommended that developers read the book "Inside COM" published by Microsoft Press. In addition to the above requirements, the following behaviors are recommended for application utilizing OLE/COM:

Exemption:
If the product falls into one of the following categories it may be exempt from OLE support: (Be sure to review section 7 of this Handbook for a complete description of this exemption.)

Object Server Requirements:
Required:
The user must be able to drag the object to any container, including other internal documents, the desktop, or documents in another OLE-supporting application.

Required:
Object servers must pass basic OLE server functionality testing. You can test this by dragging an object created by your product into an application such as Microsoft Word.

Recommended:
In addition to the above requirements, the following behaviors are recommended for Object servers:


Container Requirements
Required:
Your product must pass basic OLE container functionality testing. You can test this by creating an object in any standard OLE server, such as Microsoft Word, and dragging it into your product.

Required:
Containers must provide an Object command on the Insert menu.

Required:
Containers must implement the IDropTarget and/or IDropSource interfaces for drag-and-drop functionality. This means that the application can accept drops from any IDropSource() or can drag into any IDropTarget(), or both.

Tip: If you use the Windows 95 and Windows NT common controls, or the RichEdit control for your edit controls, your application already has support for Drag and Drop.

Recommended:
In addition to the above requirements, the following behaviors are recommended for containers: