#include "ltwia.h"
L_LTWIA_API L_INT EXT_FUNCTION L_WiaGetPropertyLong(hSession, pItem, pszID, uID, plValue)
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 |
L_INT32* plValue; |
pointer to a variable of type L_INT to be updated with the Long value |
Retrieves the Long value for a WIA property of any of the following types: VT_I1, VT_UI1, VT_I2, VT_UI2, VT_I4, VT_UI4, VT_INT, VT_UINT, VT_R4 and VT_R8.
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_TYMED | 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 the WIA property. | |
This parameter is required only if the pszID parameter is NULL, otherwise you can pass 0 for this parameter. | ||
plValue | The address for a variable of type L_INT to be updated with the passed items Long value for the specified property ID. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
This feature is available in version 16 or higher.
Call this function to retrieve the Long value for any WIA property of the types mentioned (for instance, WIA_DPS_DOCUMENT_HANDLING_SELECT, WIA_DIP_DEV_TYPE, WIA_IPA_BUFFER_SIZE, .etc).
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
LEADTOOLS WIA supports both 32-bit and 64-bit image acquisition for both WIA 1.0 (XP and earlier) and WIA 2.0 (VISTA and later).
Functions: |
L_WiaGetPropertyGUID, L_WiaGetPropertyString, L_WiaGetPropertyBuffer, L_WiaGetPropertySystemTime, L_WiaGetRootItem, L_WiaEnumChildItems, L_WiaInitSession, L_WiaEndSession. |
Topics: |
|
|
L_INT WiaGetPropertyLongExample(HWIASESSION hSession, HWND hWnd)
{
L_INT nRet;
L_INT nValue;
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_WiaGetPropertyLong(hSession, pRootItem, NULL, WIA_DPS_DOCUMENT_HANDLING_SELECT, &nValue);
if(nRet != WIA_SUCCESS)
return nRet;
/* If the selected paper source if not FEEDER then select the FEEDER */
if(!(nValue & FEEDER))
{
nValue = FEEDER;
nRet = L_WiaSetPropertyLong(hSession, pRootItem, NULL, WIA_DPS_DOCUMENT_HANDLING_SELECT, nValue);
if(nRet != WIA_SUCCESS)
return nRet;
}
return SUCCESS;
}