com.sun.jna.platform.win32

## Interface Ole32

- All Superinterfaces:
    AltCallingConvention, Library, StdCall, StdCallLibrary

      public interface Ole32
      extends StdCallLibrary

  Ole32.dll Interface.
  Author:
    dblock[at]dblock.org, Tobias Wolf, wolf.tobias@gmx.net

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.sun.jna.win32.StdCallLibrary

      `StdCallLibrary.StdCallCallback`

    - ### Nested classes/interfaces inherited from interface com.sun.jna.Library

      `Library.Handler`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `COINIT_APARTMENTTHREADED`
    `static int` | `COINIT_DISABLE_OLE1DDE`
    `static int` | `COINIT_MULTITHREADED`
    `static int` | `COINIT_SPEED_OVER_MEMORY`
    `static Ole32` | `INSTANCE` The instance.

    - ### Fields inherited from interface com.sun.jna.win32.StdCallLibrary

      `FUNCTION_MAPPER, STDCALL_CONVENTION`

    - ### Fields inherited from interface com.sun.jna.Library

      `OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_TYPE_MAPPER`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `WinNT.HRESULT` | `CLSIDFromProgID(java.lang.String lpszProgID, Guid.CLSID lpclsid)` Looks up a CLSID in the registry, given a ProgID.
    `WinNT.HRESULT` | `CLSIDFromString(WString lpsz, Guid.CLSID pclsid)` Converts a string generated by the StringFromCLSID function back into the original CLSID.
    `WinNT.HRESULT` | `CoCreateGuid(Guid.GUID.ByReference pguid)` Deprecated. use `CoCreateGuid(Guid.GUID)`.
    `WinNT.HRESULT` | `CoCreateGuid(Guid.GUID pguid)` Creates a GUID, a unique 128-bit integer used for CLSIDs and interface identifiers.
    `WinNT.HRESULT` | `CoCreateInstance(Guid.GUID rclsid, Pointer pUnkOuter, int dwClsContext, Guid.GUID riid, PointerByReference ppv)` Creates a single uninitialized object of the class associated with a specified CLSID.
    `WinNT.HRESULT` | `CoInitialize(WinDef.LPVOID pvReserved)` Initializes the COM library on the current thread and identifies the concurrency model as single-thread apartment (STA).
    `WinNT.HRESULT` | `CoInitializeEx(Pointer reserved, int dwCoInit)` 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.
    `void` | `CoUninitialize()` 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.
    `WinNT.HRESULT` | `IIDFromString(java.lang.String lpsz, Guid.GUID lpiid)` Converts a string generated by the StringFromIID function back into the original interface identifier (IID).
    `int` | `StringFromGUID2(Guid.GUID rguid, char[] lpsz, int cchMax)` Converts a globally unique identifier (GUID) into a string of printable characters.

- - ### Field Detail

    - #### INSTANCE

          static final Ole32 INSTANCE

      The instance.

    - #### COINIT_APARTMENTTHREADED

          static final int COINIT_APARTMENTTHREADED

      See Also:
        Constant Field Values

    - #### COINIT_MULTITHREADED

          static final int COINIT_MULTITHREADED

      See Also:
        Constant Field Values

    - #### COINIT_DISABLE_OLE1DDE

          static final int COINIT_DISABLE_OLE1DDE

      See Also:
        Constant Field Values

    - #### COINIT_SPEED_OVER_MEMORY

          static final int COINIT_SPEED_OVER_MEMORY

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### CoCreateGuid

          WinNT.HRESULT CoCreateGuid(Guid.GUID pguid)

      Creates a GUID, a unique 128-bit integer used for CLSIDs and interface identifiers.
      Parameters:
        `pguid` - A pointer to the requested GUID.
      Returns:
        S_OK if the GUID was successfully created.

    - #### CoCreateGuid

          WinNT.HRESULT CoCreateGuid(Guid.GUID.ByReference pguid)

      Deprecated. use `CoCreateGuid(Guid.GUID)`.

    - #### StringFromGUID2

          int StringFromGUID2(Guid.GUID rguid,
                            char[] lpsz,
                            int cchMax)

      Converts a globally unique identifier (GUID) into a string of printable characters.
      Parameters:
        `rguid` - The GUID to be converted.
        `lpsz` - A pointer to a caller-allocated string variable to receive the resulting string.
        `cchMax` - The number of characters available in the lpsz buffer.
      Returns:
        If the function succeeds, the return value is the number of characters in the returned string, including the null terminator. If the buffer is too small to contain the string, the return value is 0.

    - #### IIDFromString

          WinNT.HRESULT IIDFromString(java.lang.String lpsz,
                                    Guid.GUID lpiid)

      Converts a string generated by the StringFromIID function back into the original interface identifier (IID).
      Parameters:
        `lpsz` - A pointer to the string representation of the IID.
        `lpiid` - A pointer to the requested IID on return.
      Returns:
        This function can return the standard return values E_INVALIDARG, E_OUTOFMEMORY, and S_OK.

    - #### CoInitialize

          WinNT.HRESULT CoInitialize(WinDef.LPVOID pvReserved)

      Initializes the COM library on the current thread and identifies the concurrency model as single-thread apartment (STA). New applications should call CoInitializeEx instead of CoInitialize. pvReserved [in, optional] This parameter is reserved and must be NULL.
      Parameters:
        `pvReserved` - the pv reserved
      Returns:
        S_OK The COM library was initialized successfully on this thread. S_FALSE The COM library is already initialized on this thread. RPC_E_CHANGED_MODE A previous call to CoInitializeEx specified the concurrency model for this thread as multithread apartment (MTA). This could also indicate that a change from neutral-threaded apartment to single-threaded apartment has occurred.

    - #### CoInitializeEx

          WinNT.HRESULT CoInitializeEx(Pointer reserved,
                                     int dwCoInit)

      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.
      Parameters:
        `reserved` - This parameter is reserved and must be NULL.
        `dwCoInit` - The concurrency model and initialization options for the thread. Values for this parameter are taken from the COINIT enumeration. Any combination of values from COINIT can be used, except that the `COINIT_APARTMENTTHREADED` and `COINIT_MULTITHREADED` flags cannot both be set. The default (and only sane choice) is `COINIT_MULTITHREADED`.
      Returns:
        This function can return the standard return values E_INVALIDARG, E_OUTOFMEMORY, and E_UNEXPECTED, as well as the following values. S_OK, S_FALSE, RPC_E_CHANGED_MODE

    - #### CoUninitialize

          void CoUninitialize()

      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.

    - #### CoCreateInstance

          WinNT.HRESULT CoCreateInstance(Guid.GUID rclsid,
                                       Pointer pUnkOuter,
                                       int dwClsContext,
                                       Guid.GUID riid,
                                       PointerByReference ppv)

      Creates a single uninitialized object of the class associated with a specified CLSID.
      Parameters:
        `rclsid` - The CLSID associated with the data and code that will be used to create the object.
        `pUnkOuter` - If NULL, indicates that the object is not being created as part of an aggregate. If non-NULL, pointer to the aggregate object's IUnknown interface (the controlling IUnknown).
        `dwClsContext` - Context in which the code that manages the newly created object will run. The values are taken from the enumeration CLSCTX defined in WTypes.
        `riid` - A reference to the identifier of the interface to be used to communicate with the object.
        `ppv` - Address of pointer variable that receives the interface pointer requested in riid. Upon successful return, *ppv contains the requested interface pointer. Upon failure, *ppv contains NULL.
      Returns:
        an HRESULT

    - #### CLSIDFromProgID

          WinNT.HRESULT CLSIDFromProgID(java.lang.String lpszProgID,
                                      Guid.CLSID lpclsid)

      Looks up a CLSID in the registry, given a ProgID.
      Parameters:
        `lpszProgID` - [in] A pointer to the ProgID whose CLSID is requested.
        `lpclsid` - [out] Receives a pointer to the retrieved CLSID on return.
      Returns:
        S_OK The CLSID was retrieved successfully. CO_E_CLASSSTRING The registered CLSID for the ProgID is invalid. REGDB_E_WRITEREGDB An error occurred writing the CLSID to the registry. See Remarks below. Remarks Given a ProgID, CLSIDFromProgID looks up its associated CLSID in the registry. If the ProgID cannot be found in the registry, CLSIDFromProgID creates an OLE 1 CLSID for the ProgID and a CLSID entry in the registry. Because of the restrictions placed on OLE 1 CLSID values, CLSIDFromProgID and CLSIDFromString are the only two functions that can be used to generate a CLSID for an OLE 1 object.

    - #### CLSIDFromString

          WinNT.HRESULT CLSIDFromString(WString lpsz,
                                      Guid.CLSID pclsid)

      Converts a string generated by the StringFromCLSID function back into the original CLSID.
      Parameters:
        `lpsz` - [in] The string representation of the CLSID.
        `pclsid` - [out] A pointer to the CLSID.
      Returns:
        Return value This function can return the standard return value E_INVALIDARG, as well as the following values. NOERROR The CLSID was obtained successfully. CO_E_CLASSSTRING The class string was improperly formatted. REGDB_E_CLASSNOTREG The CLSID corresponding to the class string was not found in the registry. REGDB_E_READREGDB The registry could not be opened for reading.

Copyright © 2007-2013 Timothy Wall. All Rights Reserved.