ClickOnce アプリケーションの更新に失敗する

この記事は、ClickOnce アプリケーションの更新に失敗する問題を解決するのに役立ちます。

元の製品バージョン: .NET Framework 3.5 Service Pack 1、3.5.1
元の KB 番号: 2713442

現象

このシナリオを検討してください。 ClickOnce アプリケーションは、最初にインストールされたときに常に成功します。 ただし、以降の起動時に、更新プログラムのチェック中に ClickOnce アプリケーションが失敗します。 ランダムに見えますが、利用可能な更新プログラムがある場合は、より一般的です。

この記事が適用されるかどうかを判断するもう 1 つの方法は、ClickOnce ファイル キャッシュを削除することで問題が一時的に修正されるかどうかです。

原因

ファイル システムとレジストリ データの間の同期を中断すると、ClickOnce アプリケーションの更新が失敗する可能性があります。

  • ファイルのみを復元し、ユーザー プロファイルは復元しない不完全なシステム復元。 レジストリ キー HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment\SideBySide\2.0 は、次のフォルダー内のファイルと同じ状態にする必要があります。

    • Windows XP: %userprofile%\Local Settings\Apps\2.0\*.*

    • Windows Vista 以降: %userprofile%\AppData\Local\Apps\2.0\*.*

  • ローミング プロファイルは、同じ理由でサポートされていません。レジストリ データと一致しないファイルの可能性。 「Microsoft ClickOnce の展開は、ローミング プロファイルではサポートされていません」を参照してください。

  • 電源障害などの不名誉なオペレーティング システムのシャットダウン。

  • サインアウトやシャットダウンではなく、マシンの電源オフなど、不名誉なサインアウト。

解決方法

[原因] セクションに記載されているシナリオを回避するだけでなく、ターゲット マシンで .NET Framework 4.0 以降を使用することで、破損の一部の削減を確認できます。 .NET Framework 4.0 には、以前のフレームワーク バージョンと比較して更新エラーが少なくなり、堅牢性が向上する機能強化が含まれています。 アプリケーションは、.NET Framework 4.0 を使用して開発する必要はありません。 ターゲット マシンにインストールする必要があります。

これらの問題の軽減策は、引き続き次のとおりです。

  • プログラムの追加と削除 (ARP、Windows XP) またはプログラムと機能 (Windows Vista 以降のオペレーティング システム) からアプリケーションのアンインストールを試みます。
  • プログラムが正常にアンインストールされない場合は、ClickOnce ファイル キャッシュを削除します。

ClickOnce ファイル キャッシュを削除する

ClickOnce ファイル キャッシュを削除するには、オペレーティング システムに基づいてこのフォルダーの内容を削除します。

  • Windows XP および Server 2003 - %userprofile%\Local Settings\Apps\2.0\*.*
  • Windows Vista および Server 2008 以降 - %userprofile%\AppData\Local\Apps\2.0\*.*

これらのファイルを削除すると、インストールされているすべての ClickOnce アプリケーションの情報が消去されます。 ショートカットまたは Uniform Resource Identifiers (URI) が次回使用されると、再インストールされます。

レジストリ データを削除する必要はありません。 参考までに、ClickOnce レジストリ データは にあります HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment\SideBySide\2.0