LEADTOOLS WIA(Leadtools.Wiaアセンブリ)

フレームを表示

IsAvailableメソッド






使われるWIAバージョン。設定可能な値は、以下の通りです。

意味

WiaVersion.Version1 WIAバージョン1.0を使います。
WiaVersion.Version2 WIAバージョン2.0を使います。
WIAソースのどのバージョンがインストールされるか決定します。
構文
public static bool IsAvailable( 
   WiaVersion version
)
'Declaration
 
Public Shared Function IsAvailable( _
   ByVal version As WiaVersion _
) As Boolean
'Usage
 
Dim version As WiaVersion
Dim value As Boolean
 
value = WiaSession.IsAvailable(version)

            

            
public:
static bool IsAvailable( 
   WiaVersion version
) 

パラメーター

バージョン
使われるWIAバージョン。設定可能な値は、以下の通りです。

意味

WiaVersion.Version1 WIAバージョン1.0を使います。
WiaVersion.Version2 WIAバージョン2.0を使います。

戻り値

true、WIAソースがインストールされないならば指定されたバージョンの少なくとも1つのWIAソースがインストールされて、間違っているならば、それは指定されたWIAバージョンをサポートします。
解説
WIAメニュー項目を有効または無効にするために、このメソッドを使います。
サンプル
Copy Code  
Imports Leadtools
      Imports Leadtools.Codecs
      Imports Leadtools.Wia

      <TestMethod()> _
#If Not LEADTOOLS_V19_OR_LATER Then
      Public Sub IsAvailableExample(ByVal parent As IWin32Window)
#Else
      Public Sub IsAvailableExample(ByVal parent As IntPtr)
#End If ' #If LEADTOOLS_V19_OR_LATER Then
         If (Not WiaSession.IsAvailable(WiaVersion.Version1)) Then
            MessageBox.Show("WIA version 1.0 not installed.")
            Return
         End If
         Dim session As WiaSession = New WiaSession()
         session.Startup(WiaVersion.Version1)

         Dim res As DialogResult = session.SelectDeviceDlg(parent, WiaDeviceType.Default, WiaSelectSourceFlags.NoDefault)
         If res <> DialogResult.OK Then
            MessageBox.Show("Error selecting WIA device.")
            session.Shutdown()
            Return
         End If

         ' Initialize and fill the required fields from the WiaAcquireOptions structure
         Dim wiaAcquireOptions As WiaAcquireOptions = wiaAcquireOptions.Empty
         wiaAcquireOptions.MemoryBufferSize = 32 * 1024
         wiaAcquireOptions.DoubleBuffer = True
         session.AcquireOptions = wiaAcquireOptions

         AddHandler session.AcquireEvent, AddressOf session_AcquireEvent

         session.Acquire(parent, Nothing, WiaAcquireFlags.ShowUserInterface Or WiaAcquireFlags.UseCommonUI)

         RemoveHandler session.AcquireEvent, AddressOf session_AcquireEvent
         session.Shutdown()
      End Sub

      Public Sub session_AcquireEvent(ByVal sender As Object, ByVal e As WiaAcquireEventArgs)
         Application.DoEvents()

         If (e.Flags And WiaAcquiredPageFlags.StartOfPage) = WiaAcquiredPageFlags.StartOfPage Then
            Console.WriteLine("Beginning of data transfer.")
         ElseIf (e.Flags And WiaAcquiredPageFlags.EndOfPage) = WiaAcquiredPageFlags.EndOfPage Then
            Console.WriteLine("End of data transfer.")
         End If

         If Not e.Image Is Nothing Then
            ' You can load the image here.
         End If

         e.Cancel = False
      End Sub
using Leadtools;
      using Leadtools.Codecs;
      using Leadtools.Wia;

      [TestMethod]
#if !LEADTOOLS_V19_OR_LATER
      public void IsAvailableExample(IWin32Window parent)
#else
      public void IsAvailableExample(IntPtr parent)
#endif // #if !LEADTOOLS_V19_OR_LATER
      {
         if ( !WiaSession.IsAvailable(WiaVersion.Version1) )
         {
            MessageBox.Show("WIA version 1.0 not installed.");
            return;
         }
         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;
         }

         // Initialize and fill the required fields from the WiaAcquireOptions structure
         WiaAcquireOptions wiaAcquireOptions = WiaAcquireOptions.Empty;
         wiaAcquireOptions.MemoryBufferSize = 32 * 1024;
         wiaAcquireOptions.DoubleBuffer = true;
         wiaSession.AcquireOptions = wiaAcquireOptions;

         wiaSession.AcquireEvent += new EventHandler<WiaAcquireEventArgs>(wiaSession_AcquireEvent);

         wiaSession.Acquire(parent, null, WiaAcquireFlags.ShowUserInterface | WiaAcquireFlags.UseCommonUI);

         wiaSession.AcquireEvent -= new EventHandler<WiaAcquireEventArgs>(wiaSession_AcquireEvent);
         wiaSession.Shutdown();
      }

      public void wiaSession_AcquireEvent(object sender, WiaAcquireEventArgs e)
      {
         Application.DoEvents();

         if ((e.Flags & WiaAcquiredPageFlags.StartOfPage) == WiaAcquiredPageFlags.StartOfPage)
            Console.WriteLine("Beginning of data transfer.");
         else if ((e.Flags & WiaAcquiredPageFlags.EndOfPage) == WiaAcquiredPageFlags.EndOfPage)
            Console.WriteLine("End of data transfer.");

         if (e.Image != null)
         {
            // You can load the image here.
         }

         e.Cancel = false;
      }
必要条件

ターゲットプラットホーム

参照

参照

WiaSessionクラス
WiaSessionメンバ
Startupメソッド
Shutdownメソッド
SelectDeviceメソッド
SelectDeviceDlgメソッド
Acquireメソッド
AcquireToFileメソッド
AcquireSimpleメソッド