ole32 topic

OLE/COM APIs

Provides the Component Object Model (COM), as well as Object Linking and Embedding (OLE).

Functions

CLSIDFromProgID(Pointer<Utf16> lpszProgID, Pointer<GUID> lpclsid) int ole32
Looks up a CLSID in the registry, given a ProgID.
CLSIDFromProgIDEx(Pointer<Utf16> lpszProgID, Pointer<GUID> lpclsid) int ole32
Triggers automatic installation if the COMClassStore policy is enabled.
CLSIDFromString(Pointer<Utf16> lpsz, Pointer<GUID> pclsid) int ole32
Converts a string generated by the StringFromCLSID function back into the original CLSID.
CoAddRefServerProcess() int ole32
Increments a global per-process reference count.
CoCreateGuid(Pointer<GUID> pguid) int ole32
Creates a GUID, a unique 128-bit integer used for CLSIDs and interface identifiers.
CoCreateInstance(Pointer<GUID> rclsid, Pointer<COMObject> pUnkOuter, int dwClsContext, Pointer<GUID> riid, Pointer<Pointer<NativeType>> ppv) int ole32
Creates a single uninitialized object of the class associated with a specified CLSID. Call CoCreateInstance when you want to create only one object on the local system. To create a single object on a remote system, call the CoCreateInstanceEx function. To create multiple objects based on a single CLSID, call the CoGetClassObject function.
CoGetClassObject(Pointer<GUID> rclsid, int dwClsContext, Pointer<NativeType> pvReserved, Pointer<GUID> riid, Pointer<Pointer<NativeType>> ppv) int ole32
Provides a pointer to an interface on a class object associated with a specified CLSID. CoGetClassObject locates, and if necessary, dynamically loads the executable code required to do this.
CoGetCurrentProcess() int ole32
Returns a value that is unique to the current thread. CoGetCurrentProcess can be used to avoid thread ID reuse problems.
CoInitializeEx(Pointer<NativeType> pvReserved, int dwCoInit) int ole32
Initializes the COM library for use by the calling thread, sets the thread's concurrency model, and creates a new apartment for the thread if one is required.
CoInitializeSecurity(Pointer<NativeType> pSecDesc, int cAuthSvc, Pointer<SOLE_AUTHENTICATION_SERVICE> asAuthSvc, Pointer<NativeType> pReserved1, int dwAuthnLevel, int dwImpLevel, Pointer<NativeType> pAuthList, int dwCapabilities, Pointer<NativeType> pReserved3) int ole32
Registers security and sets the default security values for the process.
CoSetProxyBlanket(Pointer<COMObject> pProxy, int dwAuthnSvc, int dwAuthzSvc, Pointer<Utf16> pServerPrincName, int dwAuthnLevel, int dwImpLevel, Pointer<NativeType> pAuthInfo, int dwCapabilities) int ole32
Sets the authentication information that will be used to make calls on the specified proxy. This is a helper function for IClientSecurity::SetBlanket.
CoTaskMemAlloc(int cb) Pointer<NativeType> ole32
Allocates a block of task memory in the same way that IMalloc::Alloc does.
CoTaskMemFree(Pointer<NativeType> pv) → void ole32
Frees a block of task memory previously allocated through a call to the CoTaskMemAlloc or CoTaskMemRealloc function.
CoTaskMemRealloc(Pointer<NativeType> pv, int cb) Pointer<NativeType> ole32
Changes the size of a previously allocated block of task memory.
CoUninitialize() → void ole32
Closes the COM library on the current thread, unloads all DLLs loaded by the thread, frees any other resources that the thread maintains, and forces all RPC connections on the thread to close.
CoWaitForMultipleHandles(int dwFlags, int dwTimeout, int cHandles, Pointer<IntPtr> pHandles, Pointer<Uint32> lpdwindex) int ole32
Waits for specified handles to be signaled or for a specified timeout period to elapse.
CoWaitForMultipleObjects(int dwFlags, int dwTimeout, int cHandles, Pointer<IntPtr> pHandles, Pointer<Uint32> lpdwindex) int ole32
A replacement for CoWaitForMultipleHandles. This replacement API hides the options for CoWaitForMultipleHandles that are not supported in ASTA.
CreateStreamOnHGlobal(int hGlobal, int fDeleteOnRelease, Pointer<Pointer<COMObject>> ppstm) int ole32
The CreateStreamOnHGlobal function creates a stream object that uses an HGLOBAL memory handle to store the stream contents. This object is the OLE-provided implementation of the IStream interface.
GetHGlobalFromStream(Pointer<COMObject> pstm, Pointer<IntPtr> phglobal) int ole32
The GetHGlobalFromStream function retrieves the global memory handle to a stream that was created through a call to the CreateStreamOnHGlobal function.
IIDFromString(Pointer<Utf16> lpsz, Pointer<GUID> lpiid) int ole32
Converts a string generated by the StringFromIID function back into the original interface identifier (IID).
OleInitialize(Pointer<NativeType> pvReserved) int ole32
Initializes the COM library on the current apartment, and identifies the concurrency model as single-thread apartment (STA). Applications must initialize the COM library before they can call COM library functions other than CoGetMalloc and memory allocation functions.
OleUninitialize() → void ole32
Closes the COM library on the apartment, releases any class factories, other COM objects, or servers held by the apartment, disables RPC on the apartment, and frees any resources the apartment maintains.
ProgIDFromCLSID(Pointer<GUID> clsid, Pointer<Pointer<Utf16>> lplpszProgID) int ole32
Retrieves the ProgID for a given CLSID.
StringFromCLSID(Pointer<GUID> rclsid, Pointer<Pointer<Utf16>> lplpsz) int ole32
Converts a CLSID into a string of printable characters. Different CLSIDs always convert to different strings.
StringFromGUID2(Pointer<GUID> rguid, Pointer<Utf16> lpsz, int cchMax) int ole32
Converts a globally unique identifier (GUID) into a string of printable characters.
StringFromIID(Pointer<GUID> rclsid, Pointer<Pointer<Utf16>> lplpsz) int ole32
Converts an interface identifier into a string of printable characters.