我正在开发UWP应用,但遇到Windows应用认证套件(WACK)的奇怪问题。

该应用程序本身运行良好,但是当我通过WACK测试该应用程序时,它始终未通过认证,说/SomePackagePath/sni.dll failed AppContainerCheck.此外,受支持的API测试显示了我的应用程序未使用但WACK认为可以的一长串不受支持的API。我不知道为什么要这么做。

我创建了许多软件包,并试图修复代码背后的问题,我认为这可能是错误的,但无济于事。我尝试在Internet上搜索错误,但发现我的应用程序应启用.Net native tool chain,并检查了项目设置,并且该功能已启用。

WACK还说了一些应设置的链接器选项,但我不知道如何在VS 2017中设置这些链接器选项。我使用的是最新的VS 2017和所有更新。有什么建议吗?任何帮助将不胜感激。

如果有人需要,我可以提供更多信息。

最佳答案

WACK的报告说得很清楚。 “ sni.dll”调用了一些UWP不支持的API。如果“ sni.dll”是您创建的,则建议您最好检查其源代码。您可以检查.NET for UWP apps文档,以查看该dll是否调用了一些不受支持的API。如果不是您创建的该DLL,则可以先将其从项目中删除,然后创建一个包以查看它是否能够通过WACK。然后,您将知道此问题是否是由于此DLL引起的。

此外,您可以调试代码以查看启用“使用.NET Native Tool链编译”和“优化代码”时是否会出现异常。
c# - Windows App认证工具包-安全功能错误-LMLPHP

09-25 17:48