locked
Windows アプリ認定キットでsqlite3.dllにエラーが検出される RRS feed

  • 質問

  • 開発中のWindows ストアアプリをアプリ認定キットでテストしたところ、アプリで利用しているsqliteデータベースのdll sqlite3.dllが原因でセキュリティ機能のテストおよびサポートされているAPIのテストでエラーが起きしまい不合格となりました。昨年のテスト時は何事もなく合格したのですが、何か仕様が変わったのでしょうか?

    --------------

    ●VisualStudio2015 (C#, XAML)

    アプリ認定キットのバージョン

    10.0.14393.33

    アプリのアーキテクチャ

    arm

    セキュリティ機能テストの結果

    Binary Analyzer エラーが見つかりました: Binary Analyzer テストで、以下のエラーが検出されました:

    ファイル sqlite3.dll は AppContainerCheck チェックに失敗しました。

    ファイル sqlite3.dll は DBCheck チェックに失敗しました。

    ファイル sqlite3.dll は NXCheck チェックに失敗しました。

    ファイル sqlite3.dll は SafeSEHCheck チェックに失敗しました。

    サポートされているAPIのテストの結果

    エラーが見つかりました: サポート済み API のテストで、以下のエラーが検出されました:
    kernel32.dll の API AreFileApisANSI はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API CreateFileA はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API CreateFileMappingA はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API CreateFileMappingW はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API CreateFileW はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API CreateMutexW はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API DeleteFileA はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API FormatMessageA はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API GetDiskFreeSpaceA はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。
    kernel32.dll の API GetDiskFreeSpaceW はこのアプリケーションの種類ではサポートされていません。sqlite3.dll がこの API を呼び出します。

    2017年2月22日 8:32

回答

  • WACKの仕様が変わったのではなくストアアプリ用ではないsqlite3.dllを参照していると思われます。
    ストアアプリ用のsqliteを参照してみてください。

    #nugetでビルド設定をミスってる?


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2017年2月23日 3:54

すべての返信

  • WACKの仕様が変わったのではなくストアアプリ用ではないsqlite3.dllを参照していると思われます。
    ストアアプリ用のsqliteを参照してみてください。

    #nugetでビルド設定をミスってる?


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2017年2月23日 3:54
  • ご指摘のとおりでした。修正したらうまくいきました。ありがとうございます。
    2017年3月6日 6:23