Leadtools TWAIN (Leadtools.Twain assembly)
LEAD Technologies, Inc

GetDeviceEventData Method

Example 





Gets information for specific device event
Syntax
public TwainDeviceEvent GetDeviceEventData()
'Declaration
 
Public Function GetDeviceEventData() As TwainDeviceEvent
'Usage
 
Dim instance As TwainSession
Dim value As TwainDeviceEvent
 
value = instance.GetDeviceEventData()
public TwainDeviceEvent GetDeviceEventData()
 function Leadtools.Twain.TwainSession.GetDeviceEventData()
public:
TwainDeviceEvent^ GetDeviceEventData(); 

Return Value

A TwainDeviceEvent object that represents device event information
Remarks

This method will returns information for specific device event. To get status for each device event, set EnableGetDeviceEvent property to TRUE to enable firing GetDeviceEvent event To get CAP_DEVICEEVENT capability values, call GetDeviceEventCapability method, and to set CAP_DEVICEEVENT capability call SetDeviceEventCapability method, also call ResetDeviceEventCapability method to reset CAP_DEVICEEVENT capability.\

This method should be called inside GetDeviceEvent event to get the device event information.

Example
 
Public WithEvents session As TwainSession = New TwainSession()
Private Sub session_GetDeviceEvent(ByVal sender As Object, ByVal e As System.EventArgs) Handles session.GetDeviceEvent
   Try
      Dim deviceEvent As TwainDeviceEvent = session.GetDeviceEventData()
      Dim msg As String = String.Format("Event ={0}{1}Event Name ={2}", deviceEvent.Event, Chr(13), deviceEvent.DeviceName)
      MessageBox.Show(msg)

      If deviceEvent.Event = TwainCapabilityValue.DeviceEventCheckBattery Then
         msg = String.Format("Battery Minutes ={0}{1}Battery Percentage ={2}", deviceEvent.BatteryMinutes, Chr(13), deviceEvent.BatteryPercentage)
         MessageBox.Show(msg)
      ElseIf deviceEvent.Event = TwainCapabilityValue.DeviceEventCheckPowerSupply Then
         msg = String.Format("Power Supply ={0}", deviceEvent.PowerSupply)
         MessageBox.Show(msg)
      ElseIf deviceEvent.Event = TwainCapabilityValue.DeviceEventCheckPowerSupply Then
         msg = String.Format("XResolution ={0}{1}YResolution ={2}", deviceEvent.XResolution, Chr(13), deviceEvent.YResolution)
         MessageBox.Show(msg)
      ElseIf deviceEvent.Event = TwainCapabilityValue.DeviceEventCheckFlash Then
         msg = String.Format("FlashUsed2 ={0}", deviceEvent.FlashUsed2)
         MessageBox.Show(msg)
      ElseIf deviceEvent.Event = TwainCapabilityValue.DeviceEventCheckAutomaticCapture Then
         msg = String.Format("Automatic Capture ={0}{1}Time Before First Capture ={2}{3}Time Between Captures = {4}", deviceEvent.AutomaticCapture, Chr(13), deviceEvent.TimeBeforeFirstCapture, Chr(13), deviceEvent.TimeBetweenCaptures)
         MessageBox.Show(msg)
      End If
   Catch
   End Try
End Sub

Public Sub GetDeviceEventDataExample(ByVal parent As IWin32Window)
   Try
      session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None)

      AddHandler session.GetDeviceEvent, AddressOf session_GetDeviceEvent
      session.EnableGetDeviceEvent = True

      session.Acquire(TwainUserInterfaceFlags.Show)
      session.Shutdown()
   Catch
   End Try
End Sub
TwainSession session = new TwainSession();

public void GetDeviceEventDataExample(IWin32Window parent)
{
   try
   {
      session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None);
      session.GetDeviceEvent += new EventHandler<EventArgs>(session_GetDeviceEvent);
      session.EnableGetDeviceEvent = true;

      session.Acquire(TwainUserInterfaceFlags.Show);
      session.Shutdown();
   }
   catch
   { }
}

void session_GetDeviceEvent(object sender, EventArgs e)
{
   try
   {
      TwainDeviceEvent deviceEvent = session.GetDeviceEventData();
      string msg = string.Format("Event ={0}\nEvent Name ={1}\n", deviceEvent.Event, deviceEvent.DeviceName);
      MessageBox.Show(msg);

      if (deviceEvent.Event == TwainCapabilityValue.DeviceEventCheckBattery)
      {
         msg = string.Format("Battery Minutes ={0}\nBattery Percentage ={1}\n", deviceEvent.BatteryMinutes, deviceEvent.BatteryPercentage);
         MessageBox.Show(msg);
      }
      else if (deviceEvent.Event == TwainCapabilityValue.DeviceEventCheckPowerSupply)
      {
         msg = string.Format("Power Supply ={0}\n", deviceEvent.PowerSupply);
         MessageBox.Show(msg);
      }
      else if (deviceEvent.Event == TwainCapabilityValue.DeviceEventCheckPowerSupply)
      {
         msg = string.Format("XResolution ={0}\nYResolution ={1}\n", deviceEvent.XResolution, deviceEvent.YResolution);
         MessageBox.Show(msg);
      }
      else if (deviceEvent.Event == TwainCapabilityValue.DeviceEventCheckFlash)
      {
         msg = string.Format("FlashUsed2 ={0}\n", deviceEvent.FlashUsed2);
         MessageBox.Show(msg);
      }
      else if (deviceEvent.Event == TwainCapabilityValue.DeviceEventCheckAutomaticCapture)
      {
         msg = string.Format("Automatic Capture ={0}\nTime Before First Capture ={1}\nTime Between Captures = {2}\n", deviceEvent.AutomaticCapture, deviceEvent.TimeBeforeFirstCapture, deviceEvent.TimeBetweenCaptures);
         MessageBox.Show(msg);
      }
   }
   catch
   { }
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

TwainSession Class
TwainSession Members
EnableGetDeviceEvent Property
SetDeviceEventCapability Method
GetDeviceEventCapability Method
ResetDeviceEventCapability Method
Leadtools.Twain.TwainSession.GetDeviceEvent
TwainDeviceEvent Class

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.