2017-10-11 71 views
3

我正在使用UWP應用程序,並且遇到了Windows應用程序認證套件(WACK)的一個奇怪問題。Windows應用程序認證套件 - 安全功能錯誤

應用程序本身運行良好,但是當我通過WACK測試應用程序時,它始終未通過認證說/SomePackagePath/sni.dll failed AppContainerCheck.此外,受支持的API測試顯示了一長串不支持的API,我的應用程序不使用但WACK認爲它確實。我不知道它爲什麼這樣做。

我創建了很多軟件包,並試圖修復代碼隱藏的地方,我認爲事情可能是錯誤的,但無濟於事。我試圖搜索互聯網上的錯誤,我發現我的應用程序應該啓用.Net native tool chain,我檢查了項目設置,它已經啓用。

WACK還提到了一些應該設置的鏈接器選項,但我不知道如何在VS 2017中設置這些鏈接器選項。我正在使用最新的VS 2017與所有更新。有什麼建議做什麼?任何幫助將不勝感激。

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

回答

0

我設法找到了罪魁禍首,它與Jint nuget包相關。顯然它使用了一些在UWP系統中不允許的API,並且這也是sni.dll的一部分。

1

WACK報告已經說得很清楚。 「sni.dll」調用了一些UWP不支持的API。如果「sni.dll」是由你創建的,我建議你最好檢查它的源代碼。您可以檢查.NET for UWP apps文檔以查看此dll是否調用了一些不受支持的API。如果這個DLL不是由你製作的,你可以先將它從你的項目中移除並創建一個包來查看它是否能夠通過WACK。然後,你會知道這個問題是由於這個DLL引起的。

除此之外,您可以調試您的代碼,以查看在啓用「.NET本地工具鏈編譯」和「優化代碼」時是否會遇到一些異常。 enter image description here

+0

首先,我不添加'sni.dll'它從哪裏添加idk。第二,我沒有像我之前說過的那樣調用任何這些API。我已經調試了我的代碼,正如你所提到的那樣,應用程序運行良好,沒有例外或錯誤。我應該尋找特別的東西嗎? – Ahmar

+0

如果是這樣,請提供[mcve],否則很難在論壇上幫助您診斷此問題。 –

相關問題