Microsoft KB Archive/239589

{|
 * width="100%"|

PRB: Incompatibility Between VC++ Versions and Windows 2000 DDK

 * }

Q239589

-

The information in this article applies to:


 * Microsoft Windows 2000 Driver Development Kit (DDK), on platform(s):
 * the hardware: Intel x86

-

SYMPTOMS
Microsoft Visual C++ 6.0 Standard Edition and Microsoft Visual C++ 5.0 Learning Editions are not supported for building kernel mode drivers with Windows 2000 DDK. The build environment will display the following warning message as soon it's opened.

WARNING: The version of VC that you have installed is not supported for building kernel mode drivers. Some program optimizations will not be available and samples will not build with the current compiler.

CAUSE
There versions of the compiler do not support the /Oi option (Generate Intrinsic Functions). As a result, most of the C functions used in the driver will not get resolved. The /Oi option replaces some function calls with fixed or otherwise special forms of the function that help your driver run faster. Code optimization is supported only in Visual C++ Professional and Enterprise Editions.

The following is a partial list of functions that are not available for use:


 * memcpy
 * memcmp
 * memset
 * strcmp
 * strcpy
 * strlen
 * strcat

RESOLUTION
There is no resolution for this problem. Driver developers must use either Professional or Enterprise Editions of Visual C++ 6.0 to build drivers for Windows 2000.