GetDeviceEventCapability Method

Summary

Gets device events capability values for current TWAIN session.

Syntax
C#
VB
C++
public TwainCapability GetDeviceEventCapability() 
Public Function GetDeviceEventCapability() As TwainCapability 
public: 
TwainCapability^ GetDeviceEventCapability();  

Return Value

A TwainCapability object that represents CAP_DEVICEEVENT capability values

Remarks

Call this function to get CAP_DEVICEEVENT capability values. To set CAP_DEVICEEVENT capability, you can call SetDeviceEventCapability method, also to rest CAP_DEVICEEVENT capability to default values, call ResetDeviceEventCapability method.

To get status for each device event, set EnableGetDeviceEvent to TRUE. Also, to get information for device event, call GetDeviceEventData method.

Example
C#
VB
using Leadtools; 
using Leadtools.Twain; 
 
public void GetDeviceEventCapabilityExample(IntPtr parent) 
{ 
   TwainSession session = new TwainSession(); 
   session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None); 
 
   try 
   { 
      TwainCapability twnCap = session.GetDeviceEventCapability(); 
      if (twnCap.Information.Type == TwainCapabilityType.DeviceEvent) 
      { 
         int count = twnCap.ArrayCapability.Count; 
         for (int i = 0; i < count; i++) 
         { 
            TwainCapabilityValue capValue = (TwainCapabilityValue)twnCap.ArrayCapability.GetValue(i); 
            switch (capValue) 
            { 
               case TwainCapabilityValue.DeviceEventCheckBattery: 
                  MessageBox.Show("Device event checks the battery"); 
                  break; 
               case TwainCapabilityValue.DeviceEventCheckResolution: 
                  MessageBox.Show("Device event checks the resolution"); 
                  break; 
               case TwainCapabilityValue.DeviceEventDeviceReady: 
                  MessageBox.Show("Device event is ready"); 
                  break; 
            } 
         } 
 
         TwainCapability cap = new TwainCapability(); 
         cap.Information.Type = TwainCapabilityType.DeviceEvent; 
         cap.Information.ContainerType = TwainContainerType.Array; 
 
         cap.ArrayCapability.Count = 5; 
         cap.ArrayCapability.ItemType = TwainItemType.Uint16; 
         cap.ArrayCapability.SetValue(0, TwainCapabilityValue.DeviceEventDeviceReady); 
         cap.ArrayCapability.SetValue(1, TwainCapabilityValue.DeviceEventCheckDeviceOnline); 
         cap.ArrayCapability.SetValue(2, TwainCapabilityValue.DeviceEventCheckBattery); 
         cap.ArrayCapability.SetValue(3, TwainCapabilityValue.DeviceEventCheckPowerSupply); 
         cap.ArrayCapability.SetValue(4, TwainCapabilityValue.DeviceEventCheckResolution); 
 
         session.SetDeviceEventCapability(cap); 
         MessageBox.Show("DeviceEvent is changed successfully"); 
         session.ResetDeviceEventCapability(twnCap); 
         MessageBox.Show("DeviceEvent is reset to default values successfully"); 
      } 
   } 
   catch 
   { } 
 
   session.Shutdown(); 
} 
Imports Leadtools 
Imports Leadtools.Twain 
 
Public Sub GetDeviceEventCapabilityExample(ByVal parent As IntPtr) 
   Dim session As TwainSession = New TwainSession() 
   session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None) 
 
   Try 
      Dim twnCap As TwainCapability = session.GetDeviceEventCapability() 
      If twnCap.Information.Type = TwainCapabilityType.DeviceEvent Then 
         Dim count As Integer = twnCap.ArrayCapability.Count 
         Dim i As Integer 
 
         For i = 0 To count - 1 
            Dim capValue As TwainCapabilityValue = CType(twnCap.ArrayCapability.GetValue(i), TwainCapabilityValue) 
            Select Case capValue 
               Case TwainCapabilityValue.DeviceEventCheckBattery 
                  MessageBox.Show("Device event checks the battery") 
               Case TwainCapabilityValue.DeviceEventCheckResolution 
                  MessageBox.Show("Device event checks the resolution") 
               Case TwainCapabilityValue.DeviceEventDeviceReady 
                  MessageBox.Show("Device event is ready") 
            End Select 
         Next 
 
         Dim cap As TwainCapability = New TwainCapability() 
         cap.Information.Type = TwainCapabilityType.DeviceEvent 
         cap.Information.ContainerType = TwainContainerType.Array 
 
         cap.ArrayCapability.Count = 5 
         cap.ArrayCapability.ItemType = TwainItemType.Uint16 
         cap.ArrayCapability.SetValue(0, TwainCapabilityValue.DeviceEventDeviceReady) 
         cap.ArrayCapability.SetValue(1, TwainCapabilityValue.DeviceEventCheckDeviceOnline) 
         cap.ArrayCapability.SetValue(2, TwainCapabilityValue.DeviceEventCheckBattery) 
         cap.ArrayCapability.SetValue(3, TwainCapabilityValue.DeviceEventCheckPowerSupply) 
         cap.ArrayCapability.SetValue(4, TwainCapabilityValue.DeviceEventCheckResolution) 
 
         session.SetDeviceEventCapability(cap) 
         MessageBox.Show("DeviceEvent is changed successfully") 
         session.ResetDeviceEventCapability(twnCap) 
         MessageBox.Show("DeviceEvent is reset to default values successfully") 
      End If 
   Catch 
   End Try 
   session.Shutdown() 
End Sub 

Requirements

Target Platforms

Help Version 20.0.2020.3.31
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Twain Assembly