←Select platform

WiaException Class

Summary
The exception that is thrown when a WIA error occurs.

Syntax
C#
C++/CLI
Python
[SerializableAttribute()] 
public class WiaException : LeadtoolsException 
[SerializableAttribute()] 
public ref class WiaException : public LeadtoolsException, System.Runtime.InteropServices._Exception, System.Runtime.Serialization.ISerializable   
class WiaException(LeadtoolsException): 
Remarks

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.

Example
C#
using Leadtools; 
using Leadtools.Wia; 
 
       
public void WiaExceptionExample(IntPtr parent) 
{ 
   WiaSession wiaSession = null; 
 
   try 
   { 
      if (!WiaSession.IsAvailable(WiaVersion.Version1)) 
      { 
         Console.WriteLine("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) 
      { 
         Console.WriteLine("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); 
            Console.WriteLine("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) 
   { 
      Console.WriteLine(string.Format("WIA error:{0}Code: {1}{0}Message: {2}", Environment.NewLine, ex.Code, ex.Message)); 
   } 
   catch (Exception ex) 
   { 
      Console.WriteLine(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; 
} 
Requirements

Target Platforms

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

Leadtools.Wia Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.