How many different .sys files do I need?

Hi

I’ve made quite simple KMDF USB-driver that now is about to be released with our product. The driver built for Win7 32bit (using the “Windows 7”->“x86 Free Build Environment”) seem to work great with Win Vista also.

If I want to support:
Win XP 32bit
Win Vista 32bit
Win 7 32bit
Win Vista 64bit
Win 7 64bit

Is it enough to build two different sys-files using “Windows 7”->“x86 Free Build Environment” and “Windows 7”->“x64 Free Build Environment” to support the systems above? Or do I need to build a separate sys-file for every system?

Normally you build for the target of the minimum supported OS. That prevents
you from using new interfaces which are not supported on the older OS. If
you are using none of the new features of the later OSes, two drivers will
be sufficient. So in your case you would need the build environments of XP
x86 and Vista x64.

Regards,

Daniel Terhell
Resplendence Software Projects Sp
http://www.resplendence.com

wrote in message news:xxxxx@ntdev…
> Hi
>
> I’ve made quite simple KMDF USB-driver that now is about to be released
> with our product. The driver built for Win7 32bit (using the “Windows
> 7”->“x86 Free Build Environment”) seem to work great with Win Vista also.
>
> If I want to support:
> Win XP 32bit
> Win Vista 32bit
> Win 7 32bit
> Win Vista 64bit
> Win 7 64bit
>
> Is it enough to build two different sys-files using “Windows 7”->“x86 Free
> Build Environment” and “Windows 7”->“x64 Free Build Environment” to
> support the systems above? Or do I need to build a separate sys-file for
> every system?
>

Sounds reasonable.

Thanks

The capabilities of the various systems differ, so if you are using a
feature only available in the Win7 version of the DDI or the libraries, it
isn’t going to work too well on WinXP or Vista. In a few cases, you may
need workarounds for known problems in earlier systems.
joe

Hi

I’ve made quite simple KMDF USB-driver that now is about to be released
with our product. The driver built for Win7 32bit (using the “Windows
7”->“x86 Free Build Environment”) seem to work great with Win Vista also.

If I want to support:
Win XP 32bit
Win Vista 32bit
Win 7 32bit
Win Vista 64bit
Win 7 64bit

Is it enough to build two different sys-files using “Windows 7”->“x86 Free
Build Environment” and “Windows 7”->“x64 Free Build Environment” to
support the systems above? Or do I need to build a separate sys-file for
every system?


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

>separate sys-file for every system?

Either you build for oldest OS (XP), or separate for each OS.

The latter gives you the ability of supporting the new features on new OSes.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

You at least need one bin for 32 and the other for x64.

Use the latest DDK to build the driver for the oldest OS. Drivers wants to
use new OS features may detect their presence at runtime by means of i.e.
checking OS version, kernel mode counterparts of GetProcAddress etc.

At the end, use depends.exe to check imports on all intended OS’s.

Calvin

On Tue, Nov 8, 2011 at 12:21 AM, wrote:

> Hi
>
> I’ve made quite simple KMDF USB-driver that now is about to be released
> with our product. The driver built for Win7 32bit (using the “Windows
> 7”->“x86 Free Build Environment”) seem to work great with Win Vista also.
>
> If I want to support:
> Win XP 32bit
> Win Vista 32bit
> Win 7 32bit
> Win Vista 64bit
> Win 7 64bit
>
> Is it enough to build two different sys-files using “Windows 7”->“x86 Free
> Build Environment” and “Windows 7”->“x64 Free Build Environment” to support
> the systems above? Or do I need to build a separate sys-file for every
> system?
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>