The event handler receives an argument of type WiaAcquireFileEventArgs containing data related to this event. The following WiaAcquireFileEventArgs properties provide information specific to this event.
Property | Description |
---|---|
Cancel | Aborts the acquire operation. |
FileName | Indicates the full filename and path into which the current scanning operation is saving the page(s) that are being acquired. |
Flags | Indicates the start and the end of each acquired page. |
Percent | Indicates the percent completion of the acquisition process from the WIA source. |
If the user acquired several pages at the same time, a separate event occurs for each page.
For more information, refer to How to Acquire from the WIA Source.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Wia;
public void AcquireToFileExample(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.FileName = Path.Combine(LEAD_VARS.ImagesDir, "WiaTest.bmp");
wiaAcquireOptions.OverwriteExisting = true;
wiaAcquireOptions.Append = false;
wiaAcquireOptions.SaveToOneFile = false;
wiaSession.AcquireOptions = wiaAcquireOptions;
wiaSession.AcquireFileEvent += new EventHandler<WiaAcquireFileEventArgs>(wiaSession_AcquireFileEvent);
wiaSession.AcquireToFile(parent, null, WiaAcquireFlags.ShowUserInterface | WiaAcquireFlags.UseCommonUI);
// Display a listing of all paths and filenames for the saved files(s).
if (wiaSession.FilesCount > 0)
{
string strMsg = "Acquired page(s) were saved to:\n\n";
for (int i = 0; i < wiaSession.FilesCount; i++)
{
string strTemp = string.Format("{0}\n", wiaSession.FilesPaths[i]);
strMsg += strTemp;
}
Console.WriteLine(strMsg);
}
wiaSession.AcquireFileEvent -= new EventHandler<WiaAcquireFileEventArgs>(wiaSession_AcquireFileEvent);
wiaSession.Shutdown();
}
public void wiaSession_AcquireFileEvent(object sender, WiaAcquireFileEventArgs e)
{
Console.WriteLine(e.Percent);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}