Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Failed WACK: File UnityEngine.Purchasing.dll has failed the NXCheck check.

Discussion in 'Windows' started by PrettyFlyGames, Dec 11, 2016.

  1. PrettyFlyGames

    PrettyFlyGames

    Joined:
    Aug 30, 2012
    Posts:
    74
    Hi!

    I finally got to the point where I wanted to add IAP support for my game on Windows Phone however when adding the IAP purchasing module on Unity 5.4.3p3 the app fails the WACK for the text:
    • Error Found: The binary analyzer test detected the following errors:
      • File UnityEngine.Purchasing.dll has failed the NXCheck check.
      • File UnityEngine.Purchasing.dll has failed the SafeSEHCheck check.

    Any advice how to solve this?
     
  2. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,644
    Which Windows Store SDK are you targeting? Does WACK fail on your local machine or when submitting your application to Windows Store?
     
  3. PrettyFlyGames

    PrettyFlyGames

    Joined:
    Aug 30, 2012
    Posts:
    74
    Hi Tautvydas-Zilys

    I target Universal 8.1 and the WACK fails locally for Windows Phone ARM.

    /Fredrik
     
  4. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,644
    That's in a master build?
     
  5. PrettyFlyGames

    PrettyFlyGames

    Joined:
    Aug 30, 2012
    Posts:
    74
    Yes that is correct in Master Build.

    I did the following:
    1. Took a working Windows Universal 8.1 project.
    2. Added Unity IAP
    3. Added the code for the IAP.
    4. Compiled it with target Universal 8.1
    5. Opened it in Visual Studio, ensued that its set to Master.
    6. Create store package.
    7. Run local test, fails WACK with error
    • File UnityEngine.Purchasing.dll has failed the NXCheck check.
     
  6. JayR

    JayR

    Joined:
    Aug 2, 2016
    Posts:
    84
    Hi,

    Can you confirm what version of Unity IAP you are using and where you obtained it (Asset Store or Services Window Import)? We have not seen any issues with WACK for Universal 8.1 or Universal 10 builds using IAP 1.9.x with a variety of Unity releases (including 5.4.3p3) but can certainly take another look.

    Also, can you provide a copy of the WACK report? There will also be a file in the same directory named something like "post_process_trace_BinScope_*.txt" that could prove useful. You can send those to me via a private conversation if you prefer.
     
  7. PrettyFlyGames

    PrettyFlyGames

    Joined:
    Aug 30, 2012
    Posts:
    74
    Hi!

    I tried it through the services window, not sure how to see which version it is. I found a changelog file which says:
    ## [1.9.2] - 2016-11-29.

    I tested to download it from the Assets store too and that didn't make any difference.

    I found the trace file you wanted and here is the info from purchasing:
    Program Information: 0 : 2016-12-12 18:39:20 INFO:File C:\WINDOWS\temp\appcert_2E2C\GameName_1.1.6.0_arm__bdxvemmjbaj14\UnityEngine.Purchasing.dll was looked at.
    Program Information: 0 : 2016-12-12 18:39:20 ERROR[Test]: Method name: "ItemCheckedHandler"
    Error: BinScope File C:\WINDOWS\temp\appcert_2E2C\GameName_1.1.6.0_arm__bdxvemmjbaj14\UnityEngine.Purchasing.dll has failed the NXCheck check.
    Comment: N/A
    Program Information: 0 : 2016-12-12 18:39:20 ERROR[Test]: Method name: "ItemCheckedHandler"
    Error: BinScope File C:\WINDOWS\temp\appcert_2E2C\GameName_1.1.6.0_arm__bdxvemmjbaj14\UnityEngine.Purchasing.dll has failed the SafeSEHCheck check.
    Comment: N/A

    Will send the complete file via a private conversation.