GetPropertyLong Method
Syntax
Parameters
item
Handle to the item which represents the item having the property. You can retrieve this parameter by either calling the GetRootItem method to get the device's root item itself or by enumerating the child items of the device through a call to EnumChildItems method.
propertyIdName
This string should contain the equivalent property Id string for the WIA property ID. Use the see GetPropertyIdString method to get this string for the property ID.
If you passed null for this parameter then the WIA toolkit will use the property ID passed through the third parameter propertyId**; otherwise this parameters will be used whether or not you passed a valid property ID through the propertyId parameter
propertyId
The property ID for the value being sought. For a list of available property IDs, refer to WiaPropertyId.
This parameter is required only if the second parameter "propertyIdName"is null; otherwise you can pass 0 for this parameter.
Return Value
The WIA long value.
Example
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Wia;
WiaSession myWia_Session;
public void GetPropertyLongExample(IntPtr parent)
{
if (!WiaSession.IsAvailable(WiaVersion.Version1))
{
MessageBox.Show("WIA version 1.0 not installed.");
return;
}
myWia_Session = new WiaSession();
myWia_Session.Startup(WiaVersion.Version1);
DialogResult res = myWia_Session.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault);
if (res != DialogResult.OK)
{
MessageBox.Show("Error selecting WIA device.");
myWia_Session.Shutdown();
return;
}
object rootItem = myWia_Session.GetRootItem(null);
if (rootItem != null)
{
myWia_Session.EnumItemsEvent += new EventHandler<WiaEnumItemsEventArgs>(wiaSession_EnumItemsEvent4);
myWia_Session.EnumChildItems(rootItem);
myWia_Session.EnumItemsEvent -= new EventHandler<WiaEnumItemsEventArgs>(wiaSession_EnumItemsEvent4);
}
myWia_Session.Shutdown();
}
void wiaSession_EnumItemsEvent4(object sender, WiaEnumItemsEventArgs e)
{
if (e.Item != null)
{
// Read the document handling select property.
int longValue = myWia_Session.GetPropertyLong(e.Item, null, WiaPropertyId.ScannerDeviceDocumentHandlingSelect);
// If the Feeder is not selected then select the Feeder.
if ((longValue & (int)WiaScanningModeFlags.Feeder) != (int)WiaScanningModeFlags.Feeder)
{
longValue = (int)WiaScanningModeFlags.Feeder;
myWia_Session.SetPropertyLong(e.Item, null, WiaPropertyId.ScannerDeviceDocumentHandlingSelect, longValue);
}
myWia_Session.FreeItem(e.Item);
}
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Wia
Dim myWia_Session As WiaSession
<TestMethod()> _
Public Sub GetPropertyLongExample(ByVal parent As IntPtr)
If (Not wiaSession.IsAvailable(WiaVersion.Version1)) Then
MessageBox.Show("WIA version 1.0 not installed.")
Return
End If
myWia_Session = New WiaSession()
myWia_Session.Startup(WiaVersion.Version1)
Dim res As DialogResult = myWia_Session.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault)
If res <> DialogResult.OK Then
MessageBox.Show("Error selecting WIA device.")
myWia_Session.Shutdown()
Return
End If
Dim rootItem As Object = myWia_Session.GetRootItem(Nothing)
If Not rootItem Is Nothing Then
AddHandler myWia_Session.EnumItemsEvent, AddressOf session_EnumItemsEvent4
myWia_Session.EnumChildItems(rootItem)
RemoveHandler myWia_Session.EnumItemsEvent, AddressOf session_EnumItemsEvent4
End If
myWia_Session.Shutdown()
End Sub
Private Sub session_EnumItemsEvent4(ByVal sender As Object, ByVal e As WiaEnumItemsEventArgs)
If Not e.Item Is Nothing Then
' Read the document handling select property.
Dim longValue As Integer = myWia_Session.GetPropertyLong(e.Item, Nothing, WiaPropertyId.ScannerDeviceDocumentHandlingSelect)
' If Feeder is not selected then select the Feeder.
If (longValue And CInt(WiaScanningModeFlags.Feeder)) <> CInt(WiaScanningModeFlags.Feeder) Then
longValue = CInt(WiaScanningModeFlags.Feeder)
myWia_Session.SetPropertyLong(e.Item, Nothing, WiaPropertyId.ScannerDeviceDocumentHandlingSelect, longValue)
End If
myWia_Session.FreeItem(e.Item)
End If
End Sub