Ray
Fri Oct 24 12:17:02 CDT 2003
Doh... I just realized that even this suggestion is way too baroque.
Just tell your users to uninstall the 2.0 driver first before
reinstalling 1.0. I presume that your uninstallation package cleans up
after itself, right?
Ray Trent wrote:
> Well, in general, I think that Windows using the latest driver is
> probably the right thing to do. With this as a basic guiding principle,
> "working around it" would presumably require some kind of change to the
> 1.0 driver version in order to break the "correct" behavior for this one
> special case. Since you would need to change it anyway, there doesn't
> seem to be any extra work or configuration management.
>
> So, I think the "right" answer is that you should build a branch off of
> your 1.0 driver (you're using source code control, right? :-), and just
> update the version date to something later than 2.0.
>
> This way, if you ever release a 2.1 driver with a fix for the problem
> (and presumably put in an even later date), it will again correctly
> automatically be chosen as the "best" one.
>
> The alternative would be some kind of scheme where your drivers *never*
> allow themselves to be updated to a newer driver... either that or
> something hideously complex. Either of those solutions would be much worse.
>
> philippe smadja wrote:
>
>> When we update an existing device a new signed driver (2.0)
>> with an old signed driver (1.0). We can do it using the INSTALL_FORCE
>> flag of the UpdateDriverForPlugAndPlayDevice
>> () function.
>> Now, if we plug a new device, windows uses driver 2.0 with no user
>> consent or notification.
>> It is the problem and I (same with Hari) did not find a workaround.
>> We cannot change the date in the inf because it removes consistency of
>> driver delivery (and I am not sure it works) and we should have also
>> to update the dates in the registry.
>>
>> Philippe.
>>
>>
>>> -----Original Message-----
>>> On 23 Oct 2003 18:05:09 -0700, harik2k2@hotmail.com
>>
>>
>> (Hari) wrote:
>>
>>>> Clarification: Please do remember that 2.0 version of
>>
>>
>> my drivers were
>>
>>>> installed first and then 1.0 version of the drivers.
>>
>>
>> In this
>>
>>>> scenario, what would "new drivers" be? If 2.0 version
>>
>>
>> of the drivers
>>
>>>> are always considered as "new drivers" then it suits me
>>
>>
>> fine!
>>
>>> From the DDK docs:
>>
>>
>>>>> When the OS searches for drivers, it chooses a driver
>>
>>
>> with a more recent
>>
>>>>> DriverVer date over a driver with an earlier date. If
>>
>>
>> an INF has no DriverVer
>>
>>>>> entry or is unsigned, the OS applies the default date
>>
>>
>> of 00/00/0000.
>>
>>> - Bob
>>>
>>> The StickWorks
>>>
http://www.stickworks.com
>>> .
>>>
>
--
../ray\..