COM Functions
A version of this page is also available for
4/8/2010
The following table shows the COM functions with a description of the purpose of each.
Note
Windows Mobile may not support all of the programming elements in this section. For information about differences between the COM implementation available for Windows Mobile devices and that available for Windows Embedded CE devices, see COM and DCOM in Windows Mobile Devices.
Programming element | Description |
---|---|
This function locates an object by means of its moniker, activates the object if it is inactive, and retrieves a pointer to the specified interface on that object. |
|
This function looks up a class identifier in the registry, given a programmatic identifier. |
|
This function converts a string generated by the StringFromCLSID function back into the original class identifier. |
|
This function increments a global per-process reference count. |
|
This function is obsolete. |
|
This function makes a private copy of the specified proxy. |
|
This function creates a GUID, a unique 128-bit integer used for CLSIDs and interface identifiers. |
|
This function creates on the local system a single uninitialized object of the class associated with a specified class identifier. |
|
The function creates an instance of a specific class on a specific machine. |
|
This function disconnects all remote process connections being maintained on behalf of all the interface pointers that point to a specified object |
|
This function returns the current time as a FILETIME structure. |
|
This function frees all the DLLs that have been loaded with the CoLoadLibrary function (called internally by CoGetClassObject), regardless of whether they are currently in use. |
|
This function frees a library that, when loaded, was specified to be freed explicitly. |
|
This function unloads any DLLs that are no longer in use and that, when loaded, were specified to be freed automatically. |
|
This function retrieves the context of the current call on the current thread. |
|
This function provides a pointer to an interface on a class object associated with a specified class identifier. |
|
This function returns a value that is unique to the current thread. |
|
This function creates a new object and initializes it from a file using IPersistFile::Load. |
|
This function creates a new object and initializes it from a storage object through an internal call to IPersistStorage::Load. |
|
This function unmarshals a buffer containing an interface pointer and releases the stream when an interface pointer has been marshaled from another thread to the calling thread. |
|
This function returns an upper bound on the number of bytes needed to marshal the specified interface pointer to the specified object. |
|
This function returns the CLSID of the DLL that implements the proxy and stub for the specified interface. |
|
This function creates a default, or standard, marshaling object in either the client process or the server process, depending on the caller, and returns a pointer to that object's IMarshal implementation. |
|
This function initializes the COM library on the current thread and identifies the concurrency model as single-thread apartment (STA). |
|
This function initializes the Component Object Model (COM) for use by the current thread. Applications are required to use CoInitializeEx before they make any other COM library calls except for memory allocation functions. |
|
This function registers security and sets the default security values for the process. |
|
This function is called internally by the CoGetClassObject, when the class context indicates a DLL, to load a specific DLL into the caller's process. |
|
This function is called either to lock an object to ensure that it stays in memory, or to release such a lock. |
|
This function marshals an HRESULT to the specified stream, from which it can be unmarshaled using the CoUnmarshalHresult function. |
|
This function writes into a stream the data required to initialize a proxy object in some client process. |
|
This function marshals an interface pointer from one thread to another thread in the same process. |
|
This function retrieves a list of the authentication services registered when the process called CoInitializeSecurity. |
|
This function is called by the server to find out about the client that invoked the method executing on the current thread. |
|
This function retrieves the authentication information the client uses to make calls on the specified proxy. |
|
This function registers an EXE class object with OLE so other applications can connect to it. |
|
This function registers an implementation of the IMallocSpy interface in OLE, thereafter requiring OLE to call its wrapper methods around every call to the corresponding IMalloc method. |
|
This function enables a downloaded DLL to register its custom interfaces within its running process so that the marshaling code will be able to marshal those interfaces. |
|
This function registers the surrogate process through its ISurrogate interface pointer. |
|
This function destroys a previously marshaled data packet. |
|
This function decrements the global per-process reference count. |
|
This function is called by a server that can register multiple class objects to inform the OLE SCM about all registered classes, and permits activation requests for those class objects. |
|
This function restores the authentication information on a thread of execution. |
|
This function informs OLE that a class object, previously registered with the CoRegisterClassObject function, is no longer available for use. |
|
This function revokes a registered IMallocSpy object. |
|
This function sets the authentication information that will be used to make calls on the specified proxy. |
|
This function prevents any new activation requests from the SCM on all class objects registered within the process. |
|
This function switches the call context object used by CoGetCallContext. |
|
This function allocates a block of task memory. |
|
This function frees a block of task memory previously allocated through a call to the CoTaskMemAlloc or CoTaskMemRealloc function. |
|
This function changes the size of a previously allocated block of task memory. |
|
This function establishes or removes an emulation, in which objects of one class are treated as objects of a different class. |
|
This function closes the OLE Component Object Model (COM) library, freeing any resources that it maintains. |
|
This function unmarshals an HRESULT type from the specified stream. |
|
This function initializes a newly created proxy using data written into the stream by a previous call to the CoMarshalInterface function, and returns an interface pointer to that proxy. |
|
This function creates and supplies a new anti-moniker. |
|
This function supplies a pointer to an implementation of IBindCtx, an object that stores information about a particular moniker-binding operation. |
|
This function creates a class moniker that refers to the given class. |
|
This function creates a file moniker based on the specified path. |
|
This function performs a generic composition of two monikers and supplies a pointer to the resulting composite moniker. |
|
This function creates an item moniker that identifies an object within a containing object (typically a compound document). |
|
This function creates a pointer moniker based on a pointer to an object. |
|
This function determines whether the dynamic-link library (DLL) that implements this function is in use. |
|
This function retrieves the class object from a DLL object handler or object application. |
|
This function instructs an in-process server to create its registry entries for all classes supported in this server module. |
|
This function instructs an in-process server to remove only those entries created through DllRegisterServer. |
|
This function supplies the class identifier associated with the specified file name. |
|
Supplies a pointer to the IRunningObjectTable interface on the local Running Object Table (ROT). |
|
This function converts a string generated by the StringFromIID function back into the original interface identifier (IID). |
|
This function determines whether two GUIDs are equal. |
|
This function is obsolete. |
|
This function is obsolete. |
|
This function is obsolete. |
|
This function is obsolete. |
|
This function converts a string into a moniker that identifies the object named by the string. |
|
This function creates a new moniker based on the common prefix that this moniker (the one comprising the data of this moniker object) shares with another moniker. |
|
This function provides a moniker that, when composed onto the end of the first specified moniker (or one with a similar structure), yields the second specified moniker. |
|
This function retrieves the ProgID for a given CLSID. |
|
This function converts a class identifier into a string of printable characters. |
|
This function converts a globally unique identifier (GUID) into a string of printable characters. |
|
This function converts an interface identifier into a string of printable characters. |
|
This function updates the DCOM configuration after modifying the registry settings. |