The exception that is thrown when a WIA error occurs.
[SerializableAttribute()]
public class WiaException : Leadtools.LeadtoolsException, System.Runtime.InteropServices._Exception, System.Runtime.Serialization.ISerializable
<SerializableAttribute()>
Public Class WiaException
Inherits Leadtools.LeadtoolsException
Implements System.Runtime.InteropServices._Exception, System.Runtime.Serialization.ISerializable
[SerializableAttribute()]
public ref class WiaException : public Leadtools.LeadtoolsException, System.Runtime.InteropServices._Exception, System.Runtime.Serialization.ISerializable
The WiaException class defines a Code property that you can examine to determine what caused the error.
Default messages are implemented for each Code. You can, however, modify any message by using the GetCodeMessage and SetCodeMessage methods.
Imports Leadtools
Imports Leadtools.Wia
<Test> _
#If Not LEADTOOLS_V19_OR_LATER Then
Public Sub WiaExceptionExample(ByVal parent As IWin32Window)
#Else
Public Sub WiaExceptionExample(ByVal parent As IntPtr)
#End If ' #If LEADTOOLS_V19_OR_LATER Then
Dim wiaSession As WiaSession = Nothing
Try
If (Not WiaSession.IsAvailable(WiaVersion.Version1)) Then
MessageBox.Show("WIA version 1.0 not installed.")
Return
End If
' initialize a new WIA wiaSession
wiaSession = New WiaSession()
wiaSession.Startup(WiaVersion.Version1)
Dim res As DialogResult = wiaSession.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault)
If res <> DialogResult.OK Then
MessageBox.Show("Error selecting WIA device.")
wiaSession.Shutdown()
Return
End If
' acquire a page, if paper jam, allow the user to retry
Dim done As Boolean = False
Do While Not done
Try
AddHandler wiaSession.AcquireEvent, AddressOf wiaSession_AcquireEvent2
res = wiaSession.Acquire(parent, Nothing, WiaAcquireFlags.ShowUserInterface Or WiaAcquireFlags.UseCommonUI)
MessageBox.Show("Success")
done = True
RemoveHandler wiaSession.AcquireEvent, AddressOf wiaSession_AcquireEvent2
Catch ex As WiaException
If ex.Code = WiaExceptionCode.PaperJam Then
If MessageBox.Show("Paper jam. Fix and retry?", "WIA", MessageBoxButtons.YesNo) = DialogResult.No Then
done = True
End If
Else
' other error, propagate
Throw ex
End If
End Try
Loop
Catch ex As WiaException
MessageBox.Show(String.Format("WIA 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 wiaSession Is Nothing Then
wiaSession.Shutdown()
End If
End Try
End Sub
Private Sub wiaSession_AcquireEvent2(ByVal sender As Object, ByVal e As WiaAcquireEventArgs)
Application.DoEvents()
If Not e.Image Is Nothing Then
e.Image.Dispose()
End If
e.Cancel = False
End Sub
using Leadtools;
using Leadtools.Wia;
[TestMethod]
#if !LEADTOOLS_V19_OR_LATER
public void WiaExceptionExample(IWin32Window parent)
#else
public void WiaExceptionExample(IntPtr parent)
#endif // #if !LEADTOOLS_V19_OR_LATER
{
WiaSession wiaSession = null;
try
{
if (!WiaSession.IsAvailable(WiaVersion.Version1))
{
MessageBox.Show("WIA version 1.0 not installed.");
return;
}
// initialize a new WIA wiaSession
wiaSession = new WiaSession();
wiaSession.Startup(WiaVersion.Version1);
DialogResult res = wiaSession.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault);
if (res != DialogResult.OK)
{
MessageBox.Show("Error selecting WIA device.");
wiaSession.Shutdown();
return;
}
// acquire a page, if paper jam, allow the user to retry
bool done = false;
while(!done)
{
try
{
wiaSession.AcquireEvent += new EventHandler<WiaAcquireEventArgs>(wiaSession_AcquireEvent2);
res = wiaSession.Acquire(parent, null, WiaAcquireFlags.ShowUserInterface | WiaAcquireFlags.UseCommonUI);
MessageBox.Show("Success");
done = true;
wiaSession.AcquireEvent -= new EventHandler<WiaAcquireEventArgs>(wiaSession_AcquireEvent2);
}
catch(WiaException ex)
{
if(ex.Code == WiaExceptionCode.PaperJam)
{
if(MessageBox.Show("Paper jam. Fix and retry?", "WIA", MessageBoxButtons.YesNo) == DialogResult.No)
done = true;
}
else
{
// other error, propagate
throw ex;
}
}
}
}
catch(WiaException ex)
{
MessageBox.Show(string.Format("WIA 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(wiaSession != null)
wiaSession.Shutdown();
}
}
void wiaSession_AcquireEvent2(object sender, WiaAcquireEventArgs e)
{
Application.DoEvents();
if (e.Image != null)
e.Image.Dispose();
e.Cancel = false;
}
Products |
Support |
Feedback: WiaException Class - Leadtools.Wia |
Introduction |
Help Version 19.0.2017.3.21
|
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.