SyntaxHighlighter

Monday 11 March 2013

Getting a Scanner working in Windows 8

We recently supplied a new Windows 8 computer to one of our customers.  All the software installed without a problem, event the printer driver for the Kodak All-in-One.  However, the scanner driver for the all-in-one printer would not install.  The printer in question is the Kodak ESP 9250, although this trick should work with most of the Kodak printer/scanners and possibly other scanners as well.

First off I tried the great VueScan software from Hamrick which worked wonders when upgrading customers to Windows 7 in the past.  However, that software didn't work with the Kodak scanner and so was no good.

Then I came across this tutorial: http://www.pcpro.co.uk/blogs/2012/08/06/getting-older-drivers-to-work-in-windows-8/

This isn't really for the faint-hearted, which is why I attempted it!

I found the relevant INF file at C:\Program Files (x86)\Kodak\AiO\Scanner2
Named: EKAiO2Wia.inf

It is advisable to copy the file before working on it.

Upon opening the file I found that it is a "long" file with lots of sections and lots of file references.  I tried copying certain lines but I couldn't get it to install.  Then I thought, the only thing Windows knows to identify the driver is the Device-ID, so why don't I just change the ID of one of the other devices.

So that's what I did, I changed one character and then the install worked according to the PC-Pro blog.

A snippet of the inf file is included below - this is the relevant 64-bit section of the file.
I looked at the device ID of the Kodak esp 9250 - to find this run devmgmt.msc, select the scanner, then properties and details and finally "Hardware Ids"

This image isn't for the actual Kodak 9250, which has id: VID_040A&PID_4065, this is just shown as an example.
On the far right of the INF file you can see &pid_4066, this is the value I changed because I figured being only 1 number different it would be the closest match.

 [Models.ntamd64]  
 %SDSDWIA.DeviceDescC110%                    = SDSDWIA2.C110.Device, usb\vid_040a&pid_4057&mi_00  
 %SDSDWIA.DeviceDescC115%                    = SDSDWIA2.C115.Device, usb\vid_040a&pid_4058&mi_00  
 %SDSDWIA.DeviceDescC310%                    = SDSDWIA2.C310.Device, usb\vid_040a&pid_405D&mi_00  
 %SDSDWIA.DeviceDescC315%                    = SDSDWIA2.C315.Device, usb\vid_040a&pid_405E&mi_00  
 %SDSDWIA.DeviceDescESP2150%                    = SDSDWIA2.ESP2150.Device, usb\vid_040a&pid_4059&mi_00  
 %SDSDWIA.DeviceDescESP2170%                    = SDSDWIA2.ESP2170.Device, usb\vid_040a&pid_4065&mi_00  
 %SDSDWIA.DeviceDescOFFICEHERO61%          = SDSDWIA2.OFFICEHERO61.Device, usb\vid_040a&pid_4062&mi_00  
 %SDSDWIA.DeviceDescHERO51%                    = SDSDWIA2.HERO51.Device, usb\vid_040a&pid_4064&mi_00  
 %SDSDWIA.DeviceDescHERO71%                    = SDSDWIA2.HERO71.Device, usb\vid_040a&pid_4063&mi_00  
 %SDSDWIA.DeviceDescHERO91%                    = SDSDWIA2.HERO91.Device, usb\vid_040a&pid_4067&mi_00  
 %SDSDWIA.DeviceDescHERO31%                    = SDSDWIA2.HERO31.Device, usb\vid_040a&pid_406D&mi_00  
 %SDSDWIA.DeviceDescESP12%                    = SDSDWIA2.ESP12.Device, usb\vid_040a&pid_406A&mi_00  
 %SDSDWIA.DeviceDescESP32%                    = SDSDWIA2.ESP32.Device, usb\vid_040a&pid_406B&mi_00  
 %SDSDWIA.DeviceDescESP22%                    = SDSDWIA2.ESP22.Device, usb\vid_040a&pid_4068&mi_00  
 %SDSDWIA.DeviceDescESP42%                    = SDSDWIA2.ESP42.Device, usb\vid_040a&pid_4069&mi_00  

Once you've done this you need to remove the driver signature which is at the top of the file, I've done it by simply inserting a semi-colon before the CatalogFile statement:

 [Version]  
 Signature="$CHICAGO$"  
 Class=Image  
 ClassGUID={6bdd1fc6-810f-11d0-bec7-08002be2092f}  
 Provider=%Mfg%  
 ;Uncomment this to run chkinf, or if you're signing the driver...  
 ;CatalogFile=ekaio2wia.cat  
 DriverVer=10/12/2012,7.6.11.20  
 [DestinationDirs]  
 ; By default, files will be copied to \windows\system32.  
 ;DefaultDestDir=11  

 You need to reboot and install the unsigned driver as per the PC Pro guide

It worked a treat on this occasion.  Let me know how you get on.  Or if you need help, give me a call on +44 (0) 845 2233116