C#
C++/CLI
Python
[FlagsAttribute()]
public enum WiaSelectSourceFlags
Value | Member | Description |
---|---|---|
0x00000000 | None | Use the default behavior. |
0x00000001 | NoDefault | Display the dialog box even if there is only one matching device. For more information refer to WIA_SELECT_DEVICE_NODEFAULT property ID in Microsoft Windows SDK Documentation. |
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Wia;
public void IsAvailableExample(IntPtr parent)
{
if (!WiaSession.IsAvailable(WiaVersion.Version1))
{
Console.WriteLine("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)
{
Console.WriteLine("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;
}