none
Driver compatibility issue on Windows 10 and Windows 7 (Single Binary Opt-In: POOL_NX_OPTIN) RRS feed

  • Question

  • <audio id="haloword-audio"></audio>

    Hi Sir,

    I would like my driver to be used both in Windows 10 and Windows 7, I followed the "Single Binary Opt-In" guide described on this page : https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/single-binary-opt-in-pool-nx-optin to build my driver.

    The driver works fine on Windows 10 build 1903, but in Windows 7 service pack 1(64 bit), I encounter the following message :

    Since I am using exactly the same driver files on Windows 10 and Windows 7, the files are not corrupted and there must be some compatibility issues only in Windows 7, though I have no idea how to investigate on this, is there anyone can help on this, thanks.

    Tuesday, October 15, 2019 9:57 AM

All replies

  • Did you build your driver to target Windows 7?  If you targeted Windows 10, then it's quite possible you're using APIs that aren't available on Windows 7.

    How did you sign your driver?  Remember that attestation signing only works in Windows 10.  For Windows 7, you still need to use the old sign-and-cross-sign procedure.


    Tim Roberts | Driver MVP Emeritus | Providenza &amp; Boekelheide, Inc.

    Tuesday, October 15, 2019 5:36 PM
  • Did you build your driver to target Windows 7?  If you targeted Windows 10, then it's quite possible you're using APIs that aren't available on Windows 7.

    How did you sign your driver?  Remember that attestation signing only works in Windows 10.  For Windows 7, you still need to use the old sign-and-cross-sign procedure.


    Tim Roberts | Driver MVP Emeritus | Providenza &amp; Boekelheide, Inc.


    <audio id="haloword-audio"></audio>

    Hi Tim,

    I created a whole new project from VS template,

    and in the configuration manager there is only "Release/Debug" in configuration setting and "x64/x86/ARM/ARM64" in platform setting, I choose "Release/x64". Is the build not compatible with Windows 7 ?

    

    I have purchased EV-code-signing, though just found it is only supported in Window 8 and 10. Nevertheless, I disabled driver signature enforcement during Windows 7 boot up, so code signing is not a problem for me, thanks.

    Wednesday, October 16, 2019 2:30 AM
  • <audio id="haloword-audio"></audio>

    Hi all,

    Follow the two links I defined "WINVER" and "_WIN32_WINNT" to 0x601 for Windows 7,

    https://docs.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt?view=vs-2019

    https://stackoverflow.com/questions/34792718/do-per-project-preprocessor-definitions-override-inherited-values

    confirmed the value is correct in code, then build a new driver

    But I still got the same error "The driver can be corrupted or missing (code 39)"

    Appreciate for any suggestion, thanks !

    Friday, October 18, 2019 8:08 AM