| Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. | 
L_WiaGetPropertyGUID
#include "ltwia.h"
L_LTWIA_API L_INT EXT_FUNCTION L_WiaGetPropertyGUID(hSession, pItem, pszID, uID, pGuidValue)
| HWIASESSION hSession; | /* handle to an existing WIA session */ | 
| L_VOID* pItem; | /* pointer to IWiaItem or IWiaItem2 interface */ | 
| L_TCHAR* pszID; | /* pointer to string array that represents the equivalent property ID string */ | 
| L_UINT32 uID; | /* property ID */ | 
| GUID * pGuidValue; | /* pointer to a GUID structure to be updated */ | 
Retrieves the GUID structure for any WIA property of type VT_CLSID (like WIA_IPA_FORMAT).
| Parameter | Description | |
| hSession | Handle to an existing WIA session. This handle is obtained by calling the L_WiaInitSession function. | |
| pItem | Valid pointer to a type IWiaItem or IWiaItem2 object (IWiaItem if using WIA Version 1.0; IWiaItem2 if using WIA Version 2.0), which represents the item having the property. | |
| 
 | You can retrieve this parameter by either calling the L_WiaGetRootItem function to get a pointer to the device's root item or by enumerating the child items of the device through a call to L_WiaEnumChildItems. | |
| pszID | This string pointer should contain the equivalent property ID string for the WIA property ID (see example below): | |
| 
 | Property ID | Property ID Equivalent String | 
| 
 | WIA_IPA_TYM | WIA_IPA_TYMED_STR or "Media Type" | 
| 
 | WIA_IPA_DEPTH | WIA_IPA_DEPTH_STR or "Bits Per Pixel" | 
| 
 | If this parameter is NULL then the WIA toolkit will use the ID passed through the uID parameter; otherwise the pszID parameter will be used whether or not you passed valid property ID through the uID parameter. | |
| uID | The property ID for which you are obtaining the GUID structure. | |
| 
 | This parameter is required only if the pszID parameter is NULL, otherwise you can pass 0 for this parameter. | |
| pGuidValue | Pointer to a variable of type GUID to be updated with the retrieved property GUID value. | |
Returns
| SUCCESS | The function was successful. | 
| < 1 | An error occurred. Refer to Return Codes. | 
Comments
This feature is available in version 16 or higher.
Call this function to retrieve the GUID structure for any WIA property of type VT_CLSID (for instance, WIA_IPA_FORMAT).
Required DLLs and Libraries
| LTWIA For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. | 
Platforms
Earlier and later operating systems than Windows XP for WIA Version 1.
Windows VISTA or later for WIA Version 2.
See Also
| Functions: | L_WiaGetPropertyLong, L_WiaGetPropertyString, L_WiaGetPropertyBuffer, L_WiaGetPropertySystemTime, L_WiaGetRootItem, L_WiaEnumChildItems, L_WiaInitSession, L_WiaEndSession. | 
| Topics: | |
| 
 | 
Example
static L_INT CALLBACK WiaEnumItemsCB(HWIASESSION hSession,
                                     L_INT nItemsCount,
                                     L_VOID * pItem,
                                     L_VOID * pUserData)
{
   UNREFERENCED_PARAMETER(nItemsCount);
   UNREFERENCED_PARAMETER(pUserData);
   L_INT nRet;
   GUID guidFormat;
   if(pItem != NULL)
   {
      /* Get the current item's transfer format */
      nRet = L_WiaGetPropertyGUID(hSession, pItem, NULL, WIA_IPA_FORMAT, &guidFormat);
      if(nRet != WIA_SUCCESS)
         return nRet;
      /* You can also change the transfer format for that item. */
      guidFormat = WiaImgFmt_TIFF;
      nRet = L_WiaSetPropertyGUID(hSession, pItem, NULL, WIA_IPA_FORMAT, &guidFormat);
      if(nRet != WIA_SUCCESS)
         return nRet;
      nRet = L_WiaFreeItem(hSession, pItem);
      if(nRet != WIA_SUCCESS)
         return nRet;
   }
   return WIA_SUCCESS;
}
L_LTWIATEX_API L_INT WiaGetPropertyGUIDExample(HWIASESSION hSession, HWND hWnd)
{
   L_INT nRet;
   IWiaItem * pRootItem = NULL;
   nRet = L_WiaSelectDeviceDlg(hSession, hWnd, WiaDeviceTypeDefault, 0);
   if(nRet != WIA_SUCCESS)
      return nRet;
   nRet = L_WiaGetRootItem(hSession, NULL, (L_VOID**)&pRootItem);
   if(nRet != WIA_SUCCESS)
      return nRet;
   nRet = L_WiaEnumChildItems(hSession, pRootItem, WiaEnumItemsCB, NULL);
   if(nRet != WIA_SUCCESS)
      return nRet;
   return SUCCESS;
}