Trouble building PropertyPage with EWDK

My property page shares a header file with my driver (IOCTL definitions). When building the property page with the EWDK it’s unable to find ntddk.h. This file does exist in the path "<EWDK_ROOT>\Program Files\Windows Kits\10\Include\10.0.17134.0\km", however when I add that to my Additional Include Directories I get a compilation error:
g:\Program Files\Windows Kits\10\Include\10.0.17763.0\km\wdm.h(13323): error : expected ';' or ',' or '=', near 'RtlConvertLongToLargeInteger'.

I’ve seen something similar in the past when I’ve gotten my WDK and SDK out of sync. In this case I’m only using the EWDK. What am I doing wrong?

Ntddk.h is not meant to be consumed by a user mode build target. The um and shared inc dirs are what you use. What type in ntddk.h do you need to resolve for the prop page?

Bent from my phone


From: Shane_Corbin
Sent: Monday, February 4, 2019 4:00:01 PM
To: Doron Holan
Subject: [NTDEV] Trouble building PropertyPage with EWDK

OSR https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcommunity.osr.com%2F&amp;data=02|01|doron.holan%40microsoft.com|aa7d92f82429437fe35408d68afce0e6|72f988bf86f141af91ab2d7cd011db47|1|1|636849216048155534&amp;sdata=zhmPYL3noMtOQBwBn8qfPYVVicuVWaKmwwNz0ot%2FrHo%3D&amp;reserved=0
Shane_Corbin started a new discussion: Trouble building PropertyPage with EWDK

My property page shares a header file with my driver (IOCTL definitions). When building the property page with the EWDK it’s unable to find ntddk.h. This file does exist in the path “\Program Files\Windows Kits\10\Include\10.0.17134.0\km”, however when I add that to my Additional Include Directories I get a compilation error:

g:\Program Files\Windows Kits\10\Include\10.0.17763.0\km\wdm.h(13323): error : expected ‘;’ or ‘,’ or ‘=’, near ‘RtlConvertLongToLargeInteger’.

I’ve seen something similar in the past when I’ve gotten my WDK and SDK out of sync. In this case I’m only using the EWDK. What am I doing wrong?

Thanks for the reply Doron. It was an older driver that I was starting to bring forward. After further review ntddk.h is no longer needed in that particular file. At one point I was using something from that header, but it has since been removed.

Thanks!

Not sure if this is worthy of a separate thread, but the property page builds successfully with EWDK_rs4_release_17134_180410-1804 and not with EWDK_rs5_release_17763_180914-1434.

I get the following build error when building with the newer EWDK:

h:\Program Files\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\v141\Toolset.targets(36,5): error MSB8036: The Windows SDK version 10.0.17134.0 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution".

Your vcxproj must be directly referencing SDK version 17134. You want $(LatestTargetPlatformVersion) instead.

@“Scott_Noone_(OSR)” said:
Your vcxproj must be directly referencing SDK version 17134. You want $(LatestTargetPlatformVersion) instead.

Snoone FTW! Thanks!