syghの新フラグメント置き場

プログラミングTipsやコード断片の保管場所です。お絵描きもときどき載せます。

WPFのxbapファイルのキャッシュ場所

(これは2010-06-08に書いた故OCNブログの記事を移植したものです)

WPFを使用したWebアプリケーション(ブラウザ アプリケーション)を作成・デバッグ・頒布する際に、注意事項があります。

WPFを使用したWebアプリケーションの実行ファイル(.xbap)を、Visual Studioの「デバッグなしで実行」を使って実行したり、Windowsエクスプローラー上から実行したりすると、下記のユーザーフォルダーにキャッシュが作成されます。

Windows Vista / 7 / 8.xの場合
%LocalAppData%\Apps\2.0\{8.3 形式のランダムなフォルダー名}

以降、同一のアセンブリ バージョンの実行ファイルを別のフォルダーから起動しようとすると、アプリケーションの展開エラーが発生し、
「同じ ID を持つアプリケーションが既にインストールされているため、このアプリケーションをインストールすることはできません」
というエラーログが表示されます。

この場合は、上記のキャッシュ フォルダーに作成されている.xbapファイルを削除する(アンインストールする)ことで、別のフォルダーにあるアセンブリを起動することが可能になります。

デバッグ中にふとReleaseビルドの実行スピードをチェックしたくなったときなどにハマりやすいと思われる罠です。