I have a rather older Canon scanner Pixma MP 110. Of course, Canon does not provide any useful drivers (their site is really desperate, frustrating and useless in all means) – the only software I found is a Chinese version with question marks everywhere.
However, if I go to Devices and printers manager under Windows and right-click the scanner, I may use Windows-integrated scanning manager that is in my native language. It has somewhat limited features but is still better than a bunch of buttons full of question marks.
I searched a little and found out that the feature I talk about is called WIA.
Here is the approach, however in Czech, which may sound to you like these question marks sound to me.
After choosing Start scanning a dialog appears. It runs under explorer.exe
, so there is no change finding out what program it actually is.
What I want is to make a desktop shortcut, that would automatically start scanning, without me clicking the "Start scanning" and "Scan".
Also, the scanner has a button to start scanning and my computer recognizes when it's pressed. When I press it, Windows asks me what application should run for the button — however, no scanner software worked here, nor did any appear in the selection Windows gives me. I was wondering if I could hack this to run any application for that button. (that would be useful if I ever got answer for the primary question).
So the questions once more, if you were too lazy to read that long post:
- How do I make Windows automatically start scanning from installed scanner using batch script or a simple command in
.lnk
file? - (optional) How do I assign any application to the button press of my scanner?
Best Answer
PowerShell solution
The script should work with most scanners regardless if it's a Canon, Epson or whatever as long as they are WIA compatible and support the
transfer()
command. The script will start scanning immediately. All options like filename, path or image format are already set via script. You just have to start the scanning process with a shortcutD:\StartScan.ps1
Create a new shortcut and point it to
StartScan.ps1
Customizations
Item("FormatID").Value = $wiaFormatJPEG
to$wiaFormatPNG
(or TIFF, BMP, GIF) if you need another image format$([Environment]::GetFolderPath("Desktop"))\Scan {0}.jpg"
if you need another output path. Change the extension.jpg
if you previously had changed the image formatUsed resources