| Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. | 
L_WiaIsAvailable
#include "ltwia.h"
L_LTWIA_API L_BOOL EXT_FUNCTION L_WiaIsAvailable(uWiaVersion)
| L_UINT uWiaVersion; | /* WIA version you wish to use */ | 
Determines whether a WIA source is installed.
| Parameter | Description | |
| uWiaVersion | The WIA version to be used. Possible values are: | |
| 
 | Value | Meaning | 
| 
 | WiaVersion1 | [1] Use WIA version 1. | 
| 
 | WiaVersion2 | [2] Use WIA version 2. | 
Returns
| TRUE | At least one WIA source is installed. | 
| FALSE | No WIA source is installed. | 
Comments
This feature is available in version 16 or higher.
Use this function when deciding whether to enable or disable WIA menu items.
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: | |
| Topics: | Programming with LEADTOOLS Windows Image Acquisition (WIA) Functions | 
| 
 | 
Example
static L_INT CALLBACK WiaAcquireCB(HWIASESSION hSession,
                                   pBITMAPHANDLE pBitmap,
                                   L_TCHAR * pszFilename,
                                   L_UINT32 uPercent,
                                   L_UINT32 uFlags,
                                   L_VOID * pUserData)
{
   UNREFERENCED_PARAMETER(hSession);
   UNREFERENCED_PARAMETER(pBitmap);
   UNREFERENCED_PARAMETER(pszFilename);
   UNREFERENCED_PARAMETER(uPercent);
   UNREFERENCED_PARAMETER(uFlags);
   UNREFERENCED_PARAMETER(pUserData);
   // You can do here any processing to the bitmap.
   return WIA_SUCCESS;
}
L_LTWIATEX_API L_INT WiaIsAvailableExample(HWND hWnd, L_UINT uWiaVersion)
{
   L_BOOL bAvailable;
   L_INT nRet;
   HWIASESSION hSession = NULL;
   LWIAACQUIREOPTIONS AcquireOpts;
   /* Check to see if user passed WIA version is installed */
   bAvailable = L_WiaIsAvailable(uWiaVersion);
   if (bAvailable)
   {
      nRet = L_WiaInitSession(uWiaVersion, &hSession);
      if (nRet != SUCCESS)
         return nRet;
      nRet = L_WiaSelectDeviceDlg(hSession, hWnd, WiaDeviceTypeDefault, L_WIA_SELECT_DEVICE_NODEFAULT);
      if (nRet != SUCCESS)
         return nRet;
      /* Initialize and fill the required fields from the LWIAACQUIREOPTIONS structure */
      memset(&AcquireOpts, 0, sizeof(LWIAACQUIREOPTIONS));
      AcquireOpts.uStructSize = sizeof(LWIAACQUIREOPTIONS);
      AcquireOpts.uMemBufSize = 64 * 1024;
      AcquireOpts.bDoubleBuffer = TRUE;
      nRet = L_WiaAcquire(hSession, 
                          hWnd, 
                          L_WIA_SHOW_USER_INTERFACE|L_WIA_DEVICE_DIALOG_USE_COMMON_UI, 
                          NULL, 
                          &AcquireOpts, 
                          NULL, 
                          NULL, 
                          WiaAcquireCB, 
                          NULL);
      if (nRet != SUCCESS)
         return nRet;
      nRet = L_WiaEndSession(hSession);
      if (nRet != SUCCESS)
         return nRet;
   }
   return SUCCESS;
}