[argyllcms] Re: Colormunki Windows Driver

  • From: "Bruce Houston" <bhouston1@xxxxxxxxxxx>
  • To: <argyllcms@xxxxxxxxxxxxx>
  • Date: Thu, 14 Jan 2010 02:01:47 -0600

Thank you again, Graeme, on behalf of those "point and shooters" among us.
:)

I was finally able to get libusb0_x64 to work with win7 x64 by figuring out
what went wrong during the first attempts.  I would not be surprised if
Darkbasic had similar problems.

(1) I first attempted to install the "dummy" versions of libusb0_x64.dll and
libusb0_x64.sys.

(2) I then downloaded the populated versions of these files and attempted
the install by pointing the x-rite ColorMunki driver update to the libusbw
folder.  I got a "wrong platform" error but was able to get around that by
changing the munki.inf signature header from "$Chicago$" to "$Windows NT$."
At that point, Device Manager indicated that the driver was installed but
that it might not work.  It did not work.

(3) I then checked the file versions by file size, as you suggested.  I
found windows\system32\drivers populated with the 64-bit version of
libusb0.sys, as expected.  I also found windows\wowsys64 populated with the
32-bit version of libusb0.dll as expected.  However, windows\system32 was
also populated with the 32-bit version of libusb0.dll instead of the 64-bit
version.  Whether this was caused by errors in colormunki.inf or if Windows
somehow became confused by the 64-bit driver names being converted at
install time to the same names as the 32-bit versions, I do not know.

(4) In any case, I made sure that each of the files was where it belonged
and again attempted the install.  Same result.  Device Manager seemed mostly
happy with the driver update; but the driver did not work.

(5) I then again checked to make sure that each of the three driver files
was in its correct folder.  They were not.  The 32-bit version of
libusb0.dll had again made its way to windows\system32.

(6) I had forgotten (or never knew) that the original driver files are
stored in windows\system32\DriveStor\FileRepository.  Switching back and
forth between ArgyllCMS and x-rite driver for the Munki (as will be my
operational scenario) requires a driver installation operation ("driver
update") at each switch.  Each time the Munki driver is re-installed, the
appropriate driver files are copied from
windows\system32\DriveStor\FileRepository to the appropriate driver folder.
That is why the wrong version of libusb0.dll landed in windows\system32 at
each new attempt to install the Argyll Munki driver.

(7) So, I placed the proper version driver files in
windows\system32\DriveStor\FileRepository, signed the driver files, and the
installation went well.  However, the driver still did not work.  Why?  Same
root problem.  The files in windows\system32\DriveStor\FileRepository must
themselves be signed; otherwise signed versions of libusb0.dll (32-bit),
libusb0.dll (64-bit), and libusb0.sys (64-bit) are overwritten at each
re-installation by unsigned copies from
windows\system32\DriveStor\FileRepository!

(8) Fortunately, signing the archived original driver files (libusb0.dll
32-bit, libusb0_x64.dll, and libusb0_x64.sys) in
windows\system32\DriveStor\FileRepository does the trick.  The working
copies created at driver installation time appear to inherit the signatures
from the archived originals.

Thank you again, Graeme.  You probably know all of this.  I wrote this
epistle to potentially help some other wayfaring soul and as a double-check
for you, to think about whether the new colormunki.inf covers all of this
ground.

ColorMunki now works on Windows 7 x64!!  Yaaaayyyyyyyy!

Best,
Bruce


-----Original Message-----
From: argyllcms-bounce@xxxxxxxxxxxxx [mailto:argyllcms-bounce@xxxxxxxxxxxxx]
On Behalf Of Graeme Gill
Sent: Wednesday, January 13, 2010 5:33 PM
To: argyllcms@xxxxxxxxxxxxx
Subject: [argyllcms] Re: Colormunki Windows Driver

Graeme Gill wrote:
> Yes, tried with the ColorMunki, it works fine too. Plugged it it,
> use device manager to "Upgrade" the driver, point it at libusbw,
> install, OK installing from an "unknown" publisher. spotread then
> works.

Sorry, just to make it easier I've updated
<http://www.argyllcms.com/win64libusb.zip>
to include updated .inf files as well as the 64 bit .sys and .dll.
You should update it in your libusbw directory.

Graeme Gill.



Other related posts: