none
[修正済み] Visual Studio 2015 "日本語" の環境に最新の更新 (KB3165756) を適用するとテストエクスプローラーが機能しなくなります

    全般的な情報交換

  • 2016/8/3 追記。KB3165756 が 14.0.25425.01 に更新され、この問題は修正されました。
    既に問題が発生していた環境でも更新を適用することで問題が修正されます。

    --- 以下は古い情報です ---

    情報共有の為に投稿します。どうやら KB3165756 は日本語のリソースが不足しているようです。言語の設定が English なら問題ありませんでした。

    環境: Windows 10 Pro x64, Visual Studio Community 2015 Update 3 Version 14.0.25424.00, 日本語
    単体テストプロジェクトを開くと 「パーツ "Microsoft.VisualStudio.TestWindow.UI.TestWindowToolWindowControl" の初期化中に例外がスローされました。」と出力され、テストエクスプローラーは機能しません。

    既存環境へ KB3165756 の適用以外に、https://www.visualstudio.com/ja-jp/products/visual-studio-community-vs.aspx から新規インストールした場合も症状が発生します(インストール中に KB3165756 が自動的に適用される)。

    以下付随情報

    devenv /safemode で起動した場合、テストエクスプローラーには次のように表示されます。
    「Construction of frame content failed. Frame identifier: ST:0:0:{e1b7d1f8-9b3c-49b1-8f4f-bfc63a88835d} Frame caption: テスト エクスプローラー Exception details: System.UnauthorizedAccessException: アクセスが拒否されました。 (HRESULT からの例外:0x80070005 (E_ACCESSDENIED))    場所 Microsoft.VisualStudio.Shell.Interop.IVsShell5.LoadPackageWithContext(Guid& packageGuid, Int32 reason, Guid& context)    場所 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.GetPackage()    場所 Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.ConstructContent()」

    ActivityLog.xml には {BFC24BF4-B994-4757-BCDC-1D5D2768BF29} (Microsoft.VisualStudio.TestWindow.dll)、{B466091B-94AD-416F-BB8A-42534D423A67} (Microsoft.VisualStudio.PerfWatson.Provider.dll) に対して、「Appid denied the loading of package」「Package failed to load; error message suppressed by skip flag」の警告が出力されます。

    ComponentModelCache の Microsoft.VisualStudio.Default.err には「System.IO.FileNotFoundException: ファイルまたはアセンブリ 'Microsoft.VisualStudio.Workspaces.Contracts, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。」が多数出力されます。

    • 種類を変更済み Cotama 2016年7月22日 9:08
    • 編集済み Cotama 2016年8月3日 12:16
    2016年7月22日 9:07

すべての返信

  • 自分も再現しました。

    パッチの言語は英語だったので、ひょっとしたら言語パックを修復セットアップしたら新しいリソースがインストールされるかと思いましたがダメでしたね。

    拡張機能のキャッシュを削除すると治るかもしれないですが、まだ試せていません。

    ちなみに、日本語→英語とすると、初回同じエラーが出ます。

    このとき、Microsoft CodeLens Code Health Indicatorも日本語表示になっていたので、切り替わりは拡張機能のキャッシュが残っていて中途半端な状態なのかもしれません。

    再起動後、Test Explorer、Microsoft CodeLens Code Health Indicatorともに英語表示で正しく動作しました。

    英語版で動作させると、コードジェネレータが生成したコードや標準テンプレートで生成したコードのコメントが日本語版で動作させた時と違い、英語で出力されるので、新旧混ざったり、リソースを変更するとコメントがごっそり書き換わるので悩ましいですね。

    ちょくちょく、日本語版では動作しないツールの話は出てくるので、今後は日本語版を使うのはやめて、コメントも英語にする方が賢明なのかもしれません。

    2016年7月29日 9:48
  • 8/2配信の差し替え版で修正されたようです。

    Clear MEF Component Cache

    という拡張機能でキャッシュクリアして再起動かけました。

    初回起動時のエラーも無くなりましたが、初回は部分的に言語がチャンポンになるので、もう一度起動し直します。

    インストール中に、KB3165756LPというのがインストールされたためか、言語パックの再適用は不要でした。
    • 編集済み tmori3y2 2016年8月3日 3:45
    2016年8月3日 3:44
  • 私の方でも KB3165756 を適用済みと未適用の環境の両方で更新を試し、両方とも正常にテストエクスプローラーが動作することを確認しました。早めに修正されて助かりました。
    2016年8月3日 12:21