Compiler version not supported by Windows DDK.

Takes longer than clicking on the build button. :slight_smile:

Alberto.

----- Original Message -----
From: “Maxim S. Shatskih”
To: “Windows System Software Devs Interest List”

Sent: Sunday, July 24, 2005 11:29 AM
Subject: Re: [ntdev] Compiler version not supported by Windows
DDK.

> Why people are spending this much time in building serious
> projects from
> IDE?
> Why not type BUILD and forget all these annoyances?
>
> Maxim Shatskih, Windows DDK MVP
> StorageCraft Corporation
> xxxxx@storagecraft.com
> http://www.storagecraft.com
>
> ----- Original Message -----
> From: “Michael Becker”
> To: “Windows System Software Devs Interest List”
>
> Sent: Friday, July 22, 2005 10:19 PM
> Subject: Re: [ntdev] Compiler version not supported by Windows
> DDK.
>
>
>> Hi Jussi,
>>
>> Several months ago when I started to work with drivers I ran
>> into a
>> similar problem. Please take all of this with a grain of
>> salt, since
>> the details are fuzzy in my head, but the summary is that my
>> paths were
>> incorrect / out of order when I tried to build a driver from
>> VC6.
>>
>> First the setup, I had VC6, VS.NET, and the latest DDK
>> installed. I was
>> trying to work on building a driver from VC6 and got a
>> “Compiler not
>> supported” error.
>>
>> If I look at the C compiler from the 2003DDK, (just open a
>> build
>> environment and type cl.exe), I get the following:
>> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version
>> 13.10.2179
>>
>> If I look at the compiler from .NET, I get:
>> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version
>> 13.10.3077
>>
>> And if I remember correctly, the compiler from VC6 is version
>> 12…something.
>>
>> So the following will fail if you use the VC6 compiler:
>>
>> #if _MSC_VER < 1300
>> #error Compiler version not supported by Windows DDK
>> #endif
>>
>>
>> When you try and build from VC6, the IDE is probably finding
>> its
>> compiler before it finds the DDK one, thus the preprocessor
>> check
>> fails. And it will work in .NET no matter what the paths
>> because the
>> .NET compiler is newer than the DDK compiler.
>>
>> My solution at the time was to go back to using the Build
>> Environment
>> shortcuts, then later integrate one of the ddkbuild utilities
>> into an
>> IDE that I liked.
>>
>> While I’m not sure if this solves any of your problems, maybe
>> it can
>> give you some more insight into it.
>>
>> Best Regards,
>> -Mike
>>
>>
>>
>> Jussi Rytilahti wrote:
>>
>> >Thanks all!
>> >
>> >I have already tested “ddkbuild”-tool and original “build”
>> >also.
>> >
>> >@Gary:And I like this ddkbuild and I am using it in my
>> >“training project” in
>> >.NET 2003 and it seems to work very fine.
>> >
>> >@Alberto:Your absolutelly right with this
>> >“try+success=learn” (Or something
>> >like that). I will test your way also.
>> >
>> >@PeterGV: I have tried look answer from you pages but I have
>> >not successed
>> >with this problem: Why I get this error in VC6 but not .NET
>> >and Is that
>> >possible to try this wizard in VC6 with my DDK.
>> >
>> >So, question is :can I even try this wizard? Becource .AWX
>> >it is only
>> >working in VC6, but I get that error. If I take all files
>> >which wizard has
>> >created and build them in .NET (in project which uses
>> >ddkbuild) I will
>> >succeed…Is the only way out: Create files in vc6 with
>> >wizard and then
>> >build them in .NET?
>> >
>> >Jussi
>> >
>> >“Jussi Rytilahti” kirjoitti
>> >viestissä:xxxxx@ntdev…
>> >
>> >
>> >>Hi,
>> >>
>> >>I am total newbie with drivers. I have one problem. I am
>> >>reading Walter
>> >>Oneys book “Programming the Microsoft Windows Driver Model,
>> >>Ed2” and now
>> >>I´d like to try his AppWizard for Visual C++ 6.0
>> >>(WDMWIZ.AWX). I get every
>> >>time same error : error C1189: #error : Compiler version
>> >>not supported by
>> >>Windows DDK. I am using DDK 2600.1106 and working OS is XP.
>> >>Documentation
>> >>of this wizard says that wizard is for VC++6.0 and XP and
>> >>.NET DDKs
>> >>
>> >>Do I have any chances to use VC++6.0 with my DDK? (I have
>> >>also .NET, but
>> >>wizard works only in 6.0)
>> >>
>> >>BR.
>> >>Jussi
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>> >
>> >—
>> >Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>> >
>> >You are currently subscribed to ntdev as:
>> >xxxxx@hologic.com
>> >To unsubscribe send a blank email to
>> >xxxxx@lists.osr.com
>> >
>> >
>> >
>>
>> —
>> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>>
>> You are currently subscribed to ntdev as:
>> xxxxx@storagecraft.com
>> To unsubscribe send a blank email to
>> xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@ieee.org
> To unsubscribe send a blank email to
> xxxxx@lists.osr.com

“Alberto Moreira” wrote in message news:xxxxx@ntdev…

> Unless of course Microsoft’s compiler group generates special compilers
> and linkers with special features to make driver builds work, but do they
> really do that ? It doesn’t quite make sense from a compiler writing
> standpoint, nor does it make much business sense to allow such a small
> target market such as driver writing demand special compiler features that
> could easily be avoided by taking a little bit more care in specifying
> one’s APIs and libraries. But hey, anything’s possible.
>
Not just driver builds. The entire core OS for Windows is built with that
compiler according to what I understood from PlugFest and others. Microsoft
makes that compiler not for us, but for themselves so that is a completely
different motivation than just a almost free driver kit. Since the DDK also
includes compiler libraries, this also ensures that you are using the same
libraries that the OS uses. It also allows them to fix bugs for the libs
that shipped with a down-level OS’s DDK.

I used to do my own build environment to permit me to write VxDs, NT
drivers, DOS utilities, and libraries for use by all the above. Mark’s is
much easier, but I don’t have the same control. I also avoid the constant
maintenance by using his. It works well and with the use of Visual Studio
.NET 2003 and the batch build capability I can do a driver for the various
CPUs and the application in both checked and free with one (or three)
clicks. I taught a class at work in the use of DDKBUILD for doing PreFast
and CUV in that environment. It also included using a code coverage tool
too.

Well, longer only a bit, and issues with building from VS.NET takes people
days to solve.

Building drivers from VS.NET is not supported by Microsoft. Period. The
rest are on-the-knee made things.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From: “Alberto Moreira”
To: “Windows System Software Devs Interest List”
Sent: Sunday, July 24, 2005 8:01 PM
Subject: Re: [ntdev] Compiler version not supported by Windows DDK.

> Takes longer than clicking on the build button. :slight_smile:
>
> Alberto.
>
>
> ----- Original Message -----
> From: “Maxim S. Shatskih”
> To: “Windows System Software Devs Interest List”
>
> Sent: Sunday, July 24, 2005 11:29 AM
> Subject: Re: [ntdev] Compiler version not supported by Windows
> DDK.
>
>
> > Why people are spending this much time in building serious
> > projects from
> > IDE?
> > Why not type BUILD and forget all these annoyances?
> >
> > Maxim Shatskih, Windows DDK MVP
> > StorageCraft Corporation
> > xxxxx@storagecraft.com
> > http://www.storagecraft.com
> >
> > ----- Original Message -----
> > From: “Michael Becker”
> > To: “Windows System Software Devs Interest List”
> >
> > Sent: Friday, July 22, 2005 10:19 PM
> > Subject: Re: [ntdev] Compiler version not supported by Windows
> > DDK.
> >
> >
> >> Hi Jussi,
> >>
> >> Several months ago when I started to work with drivers I ran
> >> into a
> >> similar problem. Please take all of this with a grain of
> >> salt, since
> >> the details are fuzzy in my head, but the summary is that my
> >> paths were
> >> incorrect / out of order when I tried to build a driver from
> >> VC6.
> >>
> >> First the setup, I had VC6, VS.NET, and the latest DDK
> >> installed. I was
> >> trying to work on building a driver from VC6 and got a
> >> “Compiler not
> >> supported” error.
> >>
> >> If I look at the C compiler from the 2003DDK, (just open a
> >> build
> >> environment and type cl.exe), I get the following:
> >> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version
> >> 13.10.2179
> >>
> >> If I look at the compiler from .NET, I get:
> >> Microsoft (R) 32-bit C/C++ Optimizing Compiler Version
> >> 13.10.3077
> >>
> >> And if I remember correctly, the compiler from VC6 is version
> >> 12…something.
> >>
> >> So the following will fail if you use the VC6 compiler:
> >>
> >> #if _MSC_VER < 1300
> >> #error Compiler version not supported by Windows DDK
> >> #endif
> >>
> >>
> >> When you try and build from VC6, the IDE is probably finding
> >> its
> >> compiler before it finds the DDK one, thus the preprocessor
> >> check
> >> fails. And it will work in .NET no matter what the paths
> >> because the
> >> .NET compiler is newer than the DDK compiler.
> >>
> >> My solution at the time was to go back to using the Build
> >> Environment
> >> shortcuts, then later integrate one of the ddkbuild utilities
> >> into an
> >> IDE that I liked.
> >>
> >> While I’m not sure if this solves any of your problems, maybe
> >> it can
> >> give you some more insight into it.
> >>
> >> Best Regards,
> >> -Mike
> >>
> >>
> >>
> >> Jussi Rytilahti wrote:
> >>
> >> >Thanks all!
> >> >
> >> >I have already tested “ddkbuild”-tool and original “build”
> >> >also.
> >> >
> >> >@Gary:And I like this ddkbuild and I am using it in my
> >> >“training project” in
> >> >.NET 2003 and it seems to work very fine.
> >> >
> >> >@Alberto:Your absolutelly right with this
> >> >“try+success=learn” (Or something
> >> >like that). I will test your way also.
> >> >
> >> >@PeterGV: I have tried look answer from you pages but I have
> >> >not successed
> >> >with this problem: Why I get this error in VC6 but not .NET
> >> >and Is that
> >> >possible to try this wizard in VC6 with my DDK.
> >> >
> >> >So, question is :can I even try this wizard? Becource .AWX
> >> >it is only
> >> >working in VC6, but I get that error. If I take all files
> >> >which wizard has
> >> >created and build them in .NET (in project which uses
> >> >ddkbuild) I will
> >> >succeed…Is the only way out: Create files in vc6 with
> >> >wizard and then
> >> >build them in .NET?
> >> >
> >> >Jussi
> >> >
> >> >“Jussi Rytilahti” kirjoitti
> >> >viestissä:xxxxx@ntdev…
> >> >
> >> >
> >> >>Hi,
> >> >>
> >> >>I am total newbie with drivers. I have one problem. I am
> >> >>reading Walter
> >> >>Oneys book “Programming the Microsoft Windows Driver Model,
> >> >>Ed2” and now
> >> >>I´d like to try his AppWizard for Visual C++ 6.0
> >> >>(WDMWIZ.AWX). I get every
> >> >>time same error : error C1189: #error : Compiler version
> >> >>not supported by
> >> >>Windows DDK. I am using DDK 2600.1106 and working OS is XP.
> >> >>Documentation
> >> >>of this wizard says that wizard is for VC++6.0 and XP and
> >> >>.NET DDKs
> >> >>
> >> >>Do I have any chances to use VC++6.0 with my DDK? (I have
> >> >>also .NET, but
> >> >>wizard works only in 6.0)
> >> >>
> >> >>BR.
> >> >>Jussi
> >> >>
> >> >>
> >> >>
> >> >>
> >> >
> >> >
> >> >
> >> >—
> >> >Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >> >
> >> >You are currently subscribed to ntdev as:
> >> >xxxxx@hologic.com
> >> >To unsubscribe send a blank email to
> >> >xxxxx@lists.osr.com
> >> >
> >> >
> >> >
> >>
> >> —
> >> Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >>
> >> You are currently subscribed to ntdev as:
> >> xxxxx@storagecraft.com
> >> To unsubscribe send a blank email to
> >> xxxxx@lists.osr.com
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: xxxxx@ieee.org
> > To unsubscribe send a blank email to
> > xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com

I don’t know about everyone else, but I started with the VC6 IDE
because there was a lot of reference to it in the book, “Programming
the Windows Driver Model”, so being new I attempted to repeat what was
done there first before venturing into uncharted waters.

Soon after that, I found I personally prefer build.exe at a command
line.  Sometimes I may add a button or two to an IDE which ties into
build.exe via ddkbuild.bat, but only because I can follow what ddkbuild
does.

But let me emphasis the word personally.  IDE vs. CLI seems to be one
of those preferences that border on a religion (like what’s the correct
way to put braces in an if statement).  I see pros and cons to both, it
just depends on what you are more comfortable with.  What I think is
more important than IDE / CLI is repeatability, that no matter what you
use, you use the same thing the same way every time.

Just my opinion,

-Mike

Maxim S. Shatskih wrote:

Why people are spending this much time in building serious projects from
IDE?
Why not type BUILD and forget all these annoyances?

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From: “Michael Becker”
To: “Windows System Software Devs Interest List”
Sent: Friday, July 22, 2005 10:19 PM
Subject: Re: [ntdev] Compiler version not supported by Windows DDK.

Hi Jussi,

Several months ago when I started to work with drivers I ran into a
similar problem. Please take all of this with a grain of salt, since
the details are fuzzy in my head, but the summary is that my paths were
incorrect / out of order when I tried to build a driver from VC6.

First the setup, I had VC6, VS.NET, and the latest DDK installed. I was
trying to work on building a driver from VC6 and got a “Compiler not
supported” error.

If I look at the C compiler from the 2003DDK, (just open a build
environment and type cl.exe), I get the following:
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.2179

If I look at the compiler from .NET, I get:
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077

And if I remember correctly, the compiler from VC6 is version
12…something.

So the following will fail if you use the VC6 compiler:

#if _MSC_VER < 1300
#error Compiler version not supported by Windows DDK
#endif

When you try and build from VC6, the IDE is probably finding its
compiler before it finds the DDK one, thus the preprocessor check
fails. And it will work in .NET no matter what the paths because the
.NET compiler is newer than the DDK compiler.

My solution at the time was to go back to using the Build Environment
shortcuts, then later integrate one of the ddkbuild utilities into an
IDE that I liked.

While I’m not sure if this solves any of your problems, maybe it can
give you some more insight into it.

Best Regards,
-Mike

Jussi Rytilahti wrote:

Thanks all!

I have already tested “ddkbuild”-tool and original “build” also.

@Gary:And I like this ddkbuild and I am using it in my “training project” in
.NET 2003 and it seems to work very fine.

@Alberto:Your absolutelly right with this “try+success=learn” (Or something
like that). I will test your way also.

@PeterGV: I have tried look answer from you pages but I have not successed
with this problem: Why I get this error in VC6 but not .NET and Is that
possible to try this wizard in VC6 with my DDK.

So, question is :can I even try this wizard? Becource .AWX it is only
working in VC6, but I get that error. If I take all files which wizard has
created and build them in .NET (in project which uses ddkbuild) I will
succeed…Is the only way out: Create files in vc6 with wizard and then
build them in .NET?

Jussi

“Jussi Rytilahti”kirjoitti
viestissä:xxxxx@ntdev…

Hi,

I am total newbie with drivers. I have one problem. I am reading Walter
Oneys book “Programming the Microsoft Windows Driver Model, Ed2” and now
I´d like to try his AppWizard for Visual C++ 6.0 (WDMWIZ.AWX). I get every
time same error : error C1189: #error : Compiler version not supported by
Windows DDK. I am using DDK 2600.1106 and working OS is XP. Documentation
of this wizard says that wizard is for VC++6.0 and XP and .NET DDKs

Do I have any chances to use VC++6.0 with my DDK? (I have also .NET, but
wizard works only in 6.0)

BR.
Jussi


Questions? First check the Kernel Driver FAQ at

[http://www.osronline.com/article.cfm?id=256](http://www.osronline.com/article.cfm?id=256)

You are currently subscribed to ntdev as:xxxxx@hologic.com
To unsubscribe send a blank email toxxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at

[http://www.osronline.com/article.cfm?id=256](http://www.osronline.com/article.cfm?id=256)

You are currently subscribed to ntdev as:xxxxx@storagecraft.com
To unsubscribe send a blank email toxxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ athttp://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:xxxxx@hologic.com
To unsubscribe send a blank email toxxxxx@lists.osr.com