Taking a Picture with MS WIA

Posted on 2014-11-25
Last Modified: 2014-11-28

Using WIA (or it's replacement), how can I take a picture and show this in an MS Access form and report ?
imgPic on frmPictures has tblPictures.PicFilePathAndName as its control source.

Your assistance is greatly appreciated.

Kind Regards,
Question by:Mohamed Singh
  • 4
  • 3
  • 2
LVL 57
ID: 40466688
Rather than deal with low level WIA calls, you might want to purchase a control:

LVL 57
ID: 40466693
and by the way, depending on what your doing, dealing with the WIA object library directly may not be all that hard.  For example, it might be as simple as this:

Dim commondialog1 As Object
Dim img As ImageFile
Set commondialog1 = CreateObject("wia.commondialog")
Set img = commondialog1.ShowAcquireImage

img.SaveFile ("c:\test.jpg")

LVL 57
ID: 40466697
I should add that on that link in the first comment, look at the very bottom and view the sample code for frmCapture

Some of it involves dealing with their control, but a lot of it shows you how to work with the WIA lib.

LVL 26

Accepted Solution

Nick67 earned 500 total points
ID: 40467230

There are no longer any webcams that have WIA drivers, regrettably.
MS decided DirectShow should be the webcam's driver of choice -- but VBA has no DirectShow support.
That leaves WinAPI if you want a free, and freely distributable solution.

Like the sample attached :)

The sample is ROUGH.
It depends upon a working webcam being installed, and the folder c:\temppdf existing and being freely available.
frmPicParameters has two textboxes.
Enter the number of milliseconds you'd like between snapshots in the LOWER textbox. The upper is used to indicate that the app is active.
frmView is pointed at the images that get blown into c:\temppdf

Since this was for my own use only, I haven't sewn up the niceties
c:\temppdf must be empty
The webcam must exist and not being use by other applications
The error messages when things go BANG! are quite grievous, but the app works

Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

LVL 57
ID: 40467300
He just said he wanted to take a picture...not sure it will be from a webcam.

LVL 26

Expert Comment

ID: 40467459
He's read my WIA articles and asked for this in an unrelated Q
The phrasing there was using WIA to take a pic (using an attached camera/webcam)

Way back, I worked with point-and-shoots that, when jacked in with USB, could be triggered to take a picture.
None of the point-and-shoots in the outfit now (various models of Canon PowerShots) have that ability anymore.
Do you know of any?

Author Closing Comment

by:Mohamed Singh
ID: 40470896
Hi Nick67,
Thank You for your efforts, your contribution and for sharing your hard work.
Kindest Regards,

Author Comment

by:Mohamed Singh
ID: 40470899
Hi Jim,
Thank You for participating.
I will definitely keep DBPix in mind.
Kind Regards,
LVL 26

Expert Comment

ID: 40470904

Your welcome.  I hope it serves the purpose.


Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

In Debugging – Part 1, you learned the basics of the debugging process. You learned how to avoid bugs, as well as how to utilize the Immediate window in the debugging process. This article takes things to the next level by showing you how you can us…
Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
In Microsoft Access, learn how to “cascade” or have the displayed data of one combo control depend upon what’s entered in another. Base the dependent combo on a query for its row source: Add a reference to the first combo on the form as criteria i…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now