Leadtools.Twain Namespace > TwainSession Class : GetDeviceEventData Method |
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();
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.
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 { } }
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