Using C#/WIA version 2.0 on Vista to Scan

Question :

Using C#/WIA version 2.0 on Vista to Scan,

Answer :

I want to implement a paperless filing system and was looking to use WIA with C# for the image acquisition. There are quite a few sample projects on CodeProject, etc. However, after downloading every one of them that I can find, I have run into a problem.

In each and every one of them, the reference to WIALib is broken. When I go to add “Microsoft Windows Image Acquisition” as a reference, the only version available on my development workstation (also the machine that will run this) is 2.0.

Read More  Issues using MS Access as a front-end to a MySQL database back-end?

Unfortunately, every one of these sample projects appear to have been coded against 1.x. The reference goes in as “WIA” instead of “WIALib”. I took a shot, just changing the namespace import, but clearly the API is drastically different.

Is there any information on either implementing v2.0 or on upgrading one of these existing sample projects out there?


To access WIA, you’ll need to add a reference to the COM library, “Microsoft Windows Image Acquisition Library v2.0” (wiaaut.dll).
add a “using WIA;”

const string wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}";  CommonDialogClass wiaDiag = new CommonDialogClass();  WIA.ImageFile wiaImage = null;    wiaImage = wiaDiag.ShowAcquireImage(          WiaDeviceType.UnspecifiedDeviceType,           WiaImageIntent.GrayscaleIntent,           WiaImageBias.MaximizeQuality,           wiaFormatJPEG, true, true, false);    WIA.Vector vector = wiaImage.FileData;  


Image i = Image.FromStream(new MemoryStream((byte[])vector.get_BinaryData()));  i.Save(filename)  

Thats a basic way, works with my flatbed/doc feeder. If you need more than one document/page at a time though, there is probably a better way to do it (from what I could see, this only handles one image at a time, although I’m not entirely sure). While it is a WIA v1 doc, Scott Hanselman’s  does contain some more info on how to do it for multiple pages, I think (I’m yet to go further than that myself)

Read More  Where is a good place to start programming GUIs for windows?

If its for a paperless office system, you might want also check out MODI (Office Document Imaging) to do all the OCR for you.

That’s the answer Using C#/WIA version 2.0 on Vista to Scan, Hope this helps those looking for an answer. Then we suggest to do a search for the next question and find the answer only on our site.

Disclaimer :

The answers provided above are only to be used to guide the learning process. The questions above are open-ended questions, meaning that many answers are not fixed as above. I hope this article can be useful, Thank you

Read More  Is it pythonic for a function to return multiple values?