The IAMovieSetup interface provides methods that allow objects in a dynamic-link library (DLL) to be self-registering. The IAMovieSetup interface works in conjunction with an overall registration architecture that OLE requires; this architecture is partially implemented in the DirectShow™ base classes. The remainder of the implementation is described in the following sections.
When to Implement
Implement this interface if you want your filter or plug-in distributor to be able to register itself automatically as part of a setup routine on an end user system. The two methods in this interface, IAMovieSetup::Register and IAMovieSetup::Unregister, are implemented by the CBaseFilter base class for self-registering filters. For a complete list of steps showing how to use this interface with the DirectShow class library, see Register DirectShow Objects.
When to Use
Use implemented methods on this interface from an entry point on the filter that is called by a setup utility or installation utility. These are used automatically by the DirectShow architecture and normally should not need to be called by any other component.
Methods in Vtable Order
IUnknown methods | Description |
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments the reference count. |
Release | Decrements the reference count. |
IAMovieSetup methods | Description |
Register | Adds the filter to the registry. |
Unregister | Removes the filter from the registry. |
Adds the filter to the registry.
HRESULT Register(void);
Returns an HRESULT value.
This method registers the filter, its pins, and the media type associated with the pins. It should be implemented to use IFilterMapper methods to accomplish this. See the CBaseFilter::Register member function for a description of its implementation.
Removes the filter from the registry.
HRESULT Unregister(void);
Returns an HRESULT value.
This method should be implemented to use the IFilterMapper::UnregisterFilter method to remove the filter from the registry. This effectively removes the pins and media types as well.
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.