Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

NTDDI_VERSION < NTDDI_WS03

2011-09-26
2013-06-06
  • Andres Colubri
    Andres Colubri
    2011-09-26

    Hello, the recent additions to the CRT discussed here:

    https://sourceforge.net/tracker/?func=detail&aid=3408117&group_id=202880&atid=983357

    helped me to compile some code dependent on directshow.

    However, the definition of STATIC_KSPROPSETID_Wave_Queued, added in ksmedia.h, is enclosed by the following pre-processor if directive:

    #if (NTDDI_VERSION < NTDDI_WS03)

    I noticed that the evaluation of this condition gives false in my tool chain, which I compiled from the latest revision of the trunk.

    Is this condition necessarily?

     
  • Ozkan Sezer
    Ozkan Sezer
    2011-09-26

    The definition check is necessary. However we have been failing to define NTDDI_VERSION properly, because we have been forgetting to include sdkddkver.h in windows.h and winnt.h.  I posted a patch and my comments about this in a mail on the developers mailing list (mingw-w64-developerlists.sourceforge.net).

     
  • Ozkan Sezer
    Ozkan Sezer
    2011-09-26

    Changes are now merged to the trunk and to all branches, affecting windows.h, winnt.h and sdkddkver.h and remedying the failure in defining NTDDI_VERSION properly.  As of this writing, svn is at rev. 4492.

     
  • Andres Colubri
    Andres Colubri
    2011-09-26

    cool, thanks!

     
  • Andres Colubri
    Andres Colubri
    2011-09-27

    I recompiled my mingw-w64 CRT from trunk rev 4505, but the NTDDI_VERSION < NTDDI_WS03 condition still evaluates to false. I tested with i686 and x86_64 targets. Any ideas?

     
  • Ozkan Sezer
    Ozkan Sezer
    2011-09-27

    Define _WIN32_WINNT to something newer, like 0x0600 (vista), then: sdkddkver.h will automatically define WINVER, as well as NTDDI_VERSION accordingly to match the NT version requirement.