Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This function instructs an in-process server to remove only those entries created through DllRegisterServer.
Syntax
STDAPI DllUnregisterServer(void); |
Parameters
None.
Return Value
This function supports the standard return values E_OUTOFMEMORY and E_UNEXPECTED, as well as the following.
Value | Description |
---|---|
S_OK |
The registry entries were removed successfully. |
S_FALSE |
Unregistration of this server's known entries was successful, but other entries still exist for this server's classes. |
SELFREG_E_TYPELIB |
The server was unable to remove the entries of all the type libraries used by its classes. |
SELFREG_E_CLASS |
The server was unable to remove the entries of all the object classes. |
Remarks
The server must not disturb any entries that it did not create and that currently exist for its object classes. For example, between registration and unregistration, the user may have specified a TreatAsrelationship between this class and another. In that case, unregistration can remove all entries except the TreatAskey and any others that were not explicitly created in DllRegisterServer. The Win32 registry functions specifically disallow the deletion of an entire populated tree in the registry. The server can attempt, as the last step, to remove the CLSIDkey, but if other entries still exist, the key will remain.
To determine whether the platform supports this function, see Determining Supported COM APIs.
Requirements
Header | Olectl.h |
Library | oleaut32.lib |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |