[wdmaudiodev] APO won't load under Win 7 - Driver Signing woes

  • From: Culann mac Cabe <culann@xxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Thu, 14 Mar 2019 22:11:12 +0000

Hello all

I am developing a Windows Audio Processing Object (APO) to run with the
inbox USB driver for my USB Headphone.  I am having problems with Windows 7
which I believe have to do with my driver package files signing, but my
efforts so far have not solved the issue - please help!

Here's the Issue History:

*  My APO worked fine on Windows 10 but not on Windows 7.  When I set
DisableProtectedAudioDG registry key = 1, my APO loaded on Win 7 no
problem, so my issue seemed clearly associated with the Protected
Environemnt (PE) enforced by Win 7...

*  I got my customer to register for WHQL and get the driver package files
signed and tried again - APO still wouldn't load under Win 7

*  I added required directives to my .inf:
"
[SignatureAttributes]
MY_LIBRARY.dll=SignatureAttributes.PETrust

[SignatureAttributes.PETrust]
PETrust=true
"
 - re-submitted to WHQL and tried WHQL-signed again - APO still would not
load under Win 7

*  I realised that I should regenerate my .cat file because I had changed
the .inf, so I did, resubmitted to WHQL and tried WHQL-signed package files
again - APO still would not load under Win 7

*  I had a look at the setup.api.dev logs for the scenario where my APO
would/should load and run and I noticed errors for each of my package files
of the form:
"
Drp specified for non NT5 Crypto file 'C:\Windows\system32\MY_LIBRARY.dll'.
!!!  cpy:   Error 186: The flag passed is not correct.
"
*  I verified with SignTool that my modules are correctly signed, including
page hashes and timestamps - all looks ok.


So that's where I'm at and I'm a little lost and unsure what/how to
investigate from here.

Help!

My few thoughts:
*  I understand my customer should have signed certain legal agreements
with Microsoft in order for the WHQL qualification to assign the necessary
PETrust Attributes to the WHQL digital signature, but I am unfortunately
not in a position to verify whether they have correctly executed this.  Is
there any tool/technique that I can use to doible-check that the signatures
include all the Attributes that Windows 7 needs to see?

*  Are there any other debug/log tools/techniques that I may use to look at
how Windows Audio Engine sees my APO and why it won't load it?

*  Does anything stand out for you experts out there in terms of
likely/simple/stupid mistakes/assumptions I've made?

Thanks in advance
Culann

Other related posts:

  • » [wdmaudiodev] APO won't load under Win 7 - Driver Signing woes - Culann mac Cabe