The exception that is thrown when a TWAIN error occurs.
Syntax
Example
Visual Basic | Copy Code |
---|
Public Sub _twainSession_AcquirePage(ByVal sender As Object, ByVal e As TwainAcquirePageEventArgs)
Application.DoEvents()
If Not e.Image Is Nothing Then
e.Image.Dispose()
End If
e.Cancel = False
End Sub
Public Sub TwainExceptionExample(ByVal parent As IWin32Window)
Dim session As TwainSession = Nothing
Try
session = New TwainSession()
session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None)
AddHandler session.AcquirePage, AddressOf _twainSession_AcquirePage
Dim done As Boolean = False
Do While Not done
Try
Dim res As DialogResult = session.Acquire(TwainUserInterfaceFlags.Modal Or TwainUserInterfaceFlags.Show)
MessageBox.Show("Success")
done = True
Catch ex As TwainException
If ex.Code = TwainExceptionCode.PaperJam Then
If MessageBox.Show("Paper jam. Fix and retry?", "TWAIN", MessageBoxButtons.YesNo) = DialogResult.No Then
done = True
End If
Else
Throw ex
End If
End Try
Loop
Catch ex As TwainException
MessageBox.Show(String.Format("Twain error:{0}Code: {1}{0}Message: {2}", Environment.NewLine, ex.Code, ex.Message))
Catch ex As Exception
MessageBox.Show(String.Format("Other error: Message:{0}", ex.Message))
Finally
If Not session Is Nothing Then
session.Shutdown()
End If
End Try
End Sub |
C# | Copy Code |
---|
public void _twainSession_AcquirePage(object sender, TwainAcquirePageEventArgs e) { Application.DoEvents(); if(e.Image != null) e.Image.Dispose(); e.Cancel = false; } public void TwainExceptionExample(IWin32Window parent) { TwainSession session = null; try { // initialize a new TWAIN session session = new TwainSession(); session.Startup(parent, "manufacturer", "productFamily", "version", "application", TwainStartupFlags.None); session.AcquirePage += new EventHandler<TwainAcquirePageEventArgs>(_twainSession_AcquirePage); // acquire a page, if paper jam, allow the user to retry bool done = false; while(!done) { try { DialogResult res = session.Acquire(TwainUserInterfaceFlags.Modal | TwainUserInterfaceFlags.Show); MessageBox.Show("Success"); done = true; } catch(TwainException ex) { if(ex.Code == TwainExceptionCode.PaperJam) { if(MessageBox.Show("Paper jam. Fix and retry?", "TWAIN", MessageBoxButtons.YesNo) == DialogResult.No) done = true; } else { // other error, propogate throw ex; } } } } catch(TwainException ex) { MessageBox.Show(string.Format("Twain error:{0}Code: {1}{0}Message: {2}", Environment.NewLine, ex.Code, ex.Message)); } catch(Exception ex) { MessageBox.Show(string.Format("Other error: Message:{0}", ex.Message)); } finally { if(session != null) session.Shutdown(); } } |
Remarks
Inheritance Hierarchy
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
See Also