none
Windows10 Anniversary Update実施後 wil::ResultException例外が発生するようになった

    質問

  • こんにちは。
    Windows10 Anniversary Updateを実施したところ、wil::ResultException例外が発生するようになりました。ビルドしたアプリケーションの動作には目立った障害は見られないのですが、気になるのでなにか解決の糸口がありますでしょうか。
    実際のメッセージは以下の通りです。(ちなみにこれは新規MFCプロジェクトを作成して編集せずにビルド・実行したときに発生しました)
    0x764AA6F2 で例外がスローされました (MFCApplication1.exe 内): Microsoft C++ の例外: wil::ResultException (メモリの場所 0x00CFC5C8)。
    0x764AA6F2 で例外がスローされました (MFCApplication1.exe 内): Microsoft C++ の例外: [rethrow] (メモリの場所 0x00000000)。

    バージョンは
    Visual Studio Community 2015 Version 14.0.25424.00 Update3です。

    開発機のWindowsUpdateの直近の履歴は以下の通りです。

    x64 ベース システム用 Windows 10 Version 1607 の累積的な更新プログラム (KB3197356)
    Windows 10 Version 1607 for x64-Based Systems 用更新プログラム (KB3176936)
    Windows 10 Version 1607 for x64-based Systems 用 Adobe Flash Player のセキュリティ更新プログラム (KB3188128)
    Windows 10、バージョン 1607 の機能更新プログラム

    よろしくお願いいたします。

    2016年10月10日 9:25

回答

  • 再現させてみました。スタックトレースを見ますと

    KernelBase.dll!_RaiseException@16()
    msvcrt.dll!__CxxThrowException@8()
    IMJPTIP.DLL!wil::details::ThrowResultExceptionInternal(struct wil::FailureInfo const &)
    IMJPTIP.DLL!wil::details::ReportFailure(void *,unsigned int,char const *,char const *,char const *,void *,enum wil::FailureType,long,unsigned short const *,enum wil::details::ReportFailureOptions)
    IMJPTIP.DLL!wil::details::ReportFailure_Hr(void *,unsigned int,char const *,char const *,char const *,void *,enum wil::FailureType,long)
    IMJPTIP.DLL!wil::details::in1diag3::_Throw_Hr(void *,unsigned int,char const *,long)
    IMJPTIP.DLL!CTipFnHotkeyManager::IsImeOn()
    IMJPTIP.DLL!CTipFnHotkeyManager::UpdateContextHotkeys()
    IMJPTIP.DLL!CTipFnHotkeyManager::OnFocusChanged(struct ITfContext *,struct ITfContext *)
    IMJPTIP.DLL!CTipFnHotkeyManager::_OnFocusChanged()
    IMJPTIP.DLL!Tiputil::CTipContextFocusSink::OnFocusChanged(struct ITfContext *,struct ITfContext *)
    IMETIP.DLL!CTipContextEditorMgr::CallOnFocusChanged()
    IMETIP.DLL!CTipContextEditorMgr::SetContextFocus()
    IMETIP.DLL!CTipContextEditorMgr::OnDmEvent(enum Tsfutil::CTfThreadMgrEventSink::EVENT,struct ITfDocumentMgr *,struct ITfDocumentMgr *)
    IMETIP.DLL!CTipContextEditorMgr::_OnDmEvent(enum Tsfutil::CTfThreadMgrEventSink::EVENT,struct ITfDocumentMgr *,struct ITfDocumentMgr *,void *)
    IMETIP.DLL!Tsfutil::CTfThreadMgrEventSink::OnSetFocus(struct ITfDocumentMgr *,struct ITfDocumentMgr *)
    msctf.dll!CThreadInputMgr::_SetFocus()
    msctf.dll!CThreadInputMgr::OnInputFocusEvent(unsigned long,struct HWND__ *,long,long,unsigned long,unsigned long)
    msctf.dll!WinEventProc()
    user32.dll!___ClientCallWinEventProc@4()
    ntdll.dll!_KiUserCallbackDispatcher@12()
    user32.dll!PeekMessageW()
    mfc140ud.dll!0fe0e7a9()
    mfc140ud.dll!0fc8558c()
    mfc140ud.dll!0fe8455c()
    MFCApplication3.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, wchar_t * lpCmdLine, int nCmdShow)
    MFCApplication3.exe!invoke_main()
    MFCApplication3.exe!__scrt_common_main_seh()
    MFCApplication3.exe!__scrt_common_main()
    MFCApplication3.exe!wWinMainCRTStartup()
    kernel32.dll!@BaseThreadInitThunk@12()
    ntdll.dll!__RtlUserThreadStart()
    ntdll.dll!__RtlUserThreadStart@8()

    となっていました。MS-IME絡みのようですので、Windows 10 Anniversary Update 適用後のPCでOutOfMemoryが頻発すると同件でAnniversary Updateのバグではないかと思われます。

    • 回答としてマーク hclib 2016年10月13日 0:32
    2016年10月10日 12:48

すべての返信

  • 再現させてみました。スタックトレースを見ますと

    KernelBase.dll!_RaiseException@16()
    msvcrt.dll!__CxxThrowException@8()
    IMJPTIP.DLL!wil::details::ThrowResultExceptionInternal(struct wil::FailureInfo const &)
    IMJPTIP.DLL!wil::details::ReportFailure(void *,unsigned int,char const *,char const *,char const *,void *,enum wil::FailureType,long,unsigned short const *,enum wil::details::ReportFailureOptions)
    IMJPTIP.DLL!wil::details::ReportFailure_Hr(void *,unsigned int,char const *,char const *,char const *,void *,enum wil::FailureType,long)
    IMJPTIP.DLL!wil::details::in1diag3::_Throw_Hr(void *,unsigned int,char const *,long)
    IMJPTIP.DLL!CTipFnHotkeyManager::IsImeOn()
    IMJPTIP.DLL!CTipFnHotkeyManager::UpdateContextHotkeys()
    IMJPTIP.DLL!CTipFnHotkeyManager::OnFocusChanged(struct ITfContext *,struct ITfContext *)
    IMJPTIP.DLL!CTipFnHotkeyManager::_OnFocusChanged()
    IMJPTIP.DLL!Tiputil::CTipContextFocusSink::OnFocusChanged(struct ITfContext *,struct ITfContext *)
    IMETIP.DLL!CTipContextEditorMgr::CallOnFocusChanged()
    IMETIP.DLL!CTipContextEditorMgr::SetContextFocus()
    IMETIP.DLL!CTipContextEditorMgr::OnDmEvent(enum Tsfutil::CTfThreadMgrEventSink::EVENT,struct ITfDocumentMgr *,struct ITfDocumentMgr *)
    IMETIP.DLL!CTipContextEditorMgr::_OnDmEvent(enum Tsfutil::CTfThreadMgrEventSink::EVENT,struct ITfDocumentMgr *,struct ITfDocumentMgr *,void *)
    IMETIP.DLL!Tsfutil::CTfThreadMgrEventSink::OnSetFocus(struct ITfDocumentMgr *,struct ITfDocumentMgr *)
    msctf.dll!CThreadInputMgr::_SetFocus()
    msctf.dll!CThreadInputMgr::OnInputFocusEvent(unsigned long,struct HWND__ *,long,long,unsigned long,unsigned long)
    msctf.dll!WinEventProc()
    user32.dll!___ClientCallWinEventProc@4()
    ntdll.dll!_KiUserCallbackDispatcher@12()
    user32.dll!PeekMessageW()
    mfc140ud.dll!0fe0e7a9()
    mfc140ud.dll!0fc8558c()
    mfc140ud.dll!0fe8455c()
    MFCApplication3.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, wchar_t * lpCmdLine, int nCmdShow)
    MFCApplication3.exe!invoke_main()
    MFCApplication3.exe!__scrt_common_main_seh()
    MFCApplication3.exe!__scrt_common_main()
    MFCApplication3.exe!wWinMainCRTStartup()
    kernel32.dll!@BaseThreadInitThunk@12()
    ntdll.dll!__RtlUserThreadStart()
    ntdll.dll!__RtlUserThreadStart@8()

    となっていました。MS-IME絡みのようですので、Windows 10 Anniversary Update 適用後のPCでOutOfMemoryが頻発すると同件でAnniversary Updateのバグではないかと思われます。

    • 回答としてマーク hclib 2016年10月13日 0:32
    2016年10月10日 12:48
  • 返信ありがとうございます。

    10/13現在、まだ発生するようです。OSの更新も最近頻繁に実施されているようですのでもう少し様子を見たいと思います。

    2016年10月13日 0:32
  • 2017年5月1日現在でも、発生しています。

    2017年5月1日 6:15