LEADTOOLS WIA (Leadtools.Wia assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.30
GetPropertyLong Method
See Also 
Leadtools.Wia Namespace > WiaSession Class : GetPropertyLong Method



item
Handle to the item which represents the item having the property. You can retrieve this parameter by either calling the WiaSession.GetRootItem method to get the device’s root item itself or by enumerating the child items of the device through a call to Leadtools.Wia.WiaSession.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.

item
Handle to the item which represents the item having the property. You can retrieve this parameter by either calling the WiaSession.GetRootItem method to get the device’s root item itself or by enumerating the child items of the device through a call to Leadtools.Wia.WiaSession.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.

Retrieves the Long value for a WIA property of any of the following types: WiaVariableTypes.I1, WiaVariableTypes.UI1, WiaVariableTypes.I2, WiaVariableTypes.UI2, WiaVariableTypes.I4, WiaVariableTypes.UI4, WiaVariableTypes.Int, WiaVariableTypes.UInt, WiaVariableTypes.R4, or WiaVariableTypes.R8.

Syntax

Visual Basic (Declaration) 
Public Function GetPropertyLong( _
   ByVal item As Object, _
   ByVal propertyIdName As String, _
   ByVal propertyId As WiaPropertyId _
) As Integer
Visual Basic (Usage)Copy Code
Dim instance As WiaSession
Dim item As Object
Dim propertyIdName As String
Dim propertyId As WiaPropertyId
Dim value As Integer
 
value = instance.GetPropertyLong(item, propertyIdName, propertyId)
C# 
public int GetPropertyLong( 
   object item,
   string propertyIdName,
   WiaPropertyId propertyId
)
C++/CLI 
public:
int GetPropertyLong( 
   Object^ item,
   String^ propertyIdName,
   WiaPropertyId propertyId
) 

Parameters

item
Handle to the item which represents the item having the property. You can retrieve this parameter by either calling the WiaSession.GetRootItem method to get the device’s root item itself or by enumerating the child items of the device through a call to Leadtools.Wia.WiaSession.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

Visual BasicCopy Code
Dim myWia_Session As WiaSession
Public Sub GetPropertyLongExample(ByVal parent As IWin32Window)
   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
C#Copy Code
WiaSession myWia_Session;
public void GetPropertyLongExample(IWin32Window 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);
   }
}

Remarks

Call this function to retrieve the Long value for any WIA property of the types mentioned (for instance, WiaPropertyId.ScannerDeviceDocumentHandlingSelect , WiaPropertyId.DeviceInfoDevTypeWiaPropertyId.ItemBufferSize , ...etc).

For more information, refer to Managing WIA Sources.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also