misc.log

日常茶飯事とお仕事と

Visual Studio 2012 Premiumで新しいプロジェクトを作成できない

Windows 7 32bit版にVisual Studio 2012 Premium Editionをインストール後、Windows Updateを実行。50個くらいのアップデートを適用しました。その後、Visual Studio 2012を起動し、プロジェクトを新規作成しようとすると下図のようなエラーが。

f:id:frontline:20131002225259j:plain

制約 ContractName
Microsoft.VisualStudio.Text.ITextDocumentFactoryService
RequiredTypeIdentity
Microsoft.VisualStudio.Text.ITextDocumentFactoryService に一致するエクスポートが見つかりませんでした

プロジェクトはVB.NETのWindowsフォームアプリ、ASP.NET、同様にC#も試しましたが駄目でした。

Windows Updateが原因??キャッシュフォルダが原因?

単語で検索したところ、こんなのがヒットしました。

Error message when attempting to create a new Visual Studio Express 2012 Project.
https://connect.microsoft.com/VisualStudio/feedback/details/764801/error-message-when-attempting-to-create-a-new-visual-studio-express-2012-project
"No exports were found that match the constraint" Error creating a new project
http://connect.microsoft.com/VisualStudio/feedback/details/742469/no-exports-were-found-that-match-the-constraint-error-creating-a-new-project

いずれもMicrosort Connectのバグ報告に上がっているもの。前者については再現できないとしてクローズされていますが、後者は回避方法が報告されています。回避法は2つ。

  • "ComponentModelCache"ディレクトリを削除する。
  • Windows Update実行後の発生であれば、Visual Studio 2012のインストーラーを再実行する。

お手軽そうなのは前者。こちらを試してみましょうか…。しかしなんで…

ComponentModelCacheフォルダを消してみた

前述、後者の方法にコメントとしてStackoverflowのQAが転記されています。それによると、削除するフォルダは

Users\{username}\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

のようです。やってみます……Visual Studio 2012起動、ASP.NETのプロジェクト作成……うまくいきました。

StackoverflowのQAページはこちら

no exports were found that match the constraint contract name
http://stackoverflow.com/questions/17596543/no-exports-were-found-that-match-the-constraint-contract-name

Microsoft Visual Studio Professional 2012 通常版

Microsoft Visual Studio Professional 2012 通常版

Visual Studio 2012新機能マスターブック (MSDNプログラミングシリーズ)

Visual Studio 2012新機能マスターブック (MSDNプログラミングシリーズ)