ClickOnce デプロイでの特定のエラーのトラブルシューティング
適用対象: Visual Studio
この記事では、ClickOnce アプリケーションを展開するときに発生する可能性がある一般的なエラーについて説明し、各問題を解決する手順について説明します。
一般的なエラー
アプリケーション ファイルを検索しようとすると、何も発生しないか、インターネット エクスプローラーで XML がレンダリングされるか、[実行] または [名前を付けて保存] ダイアログ ボックスが表示されます
このエラーの原因として考えられるのは、コンテンツ タイプ (MIME タイプとも呼ばれます) がサーバーまたはクライアントに正しく登録されていないことです。
まず、 .application 拡張機能をコンテンツ タイプ "application/x-ms-application" に関連付けるためにサーバーが構成されていることを確認します。
サーバーが正しく構成されている場合は、.NET Framework 2.0 がコンピューターにインストールされていることをチェックします。 .NET Framework 2.0 がインストールされていてもこの問題が解決しない場合は、.NET Framework 2.0 をアンインストールして再インストールして、コンテンツ タイプをクライアントに再登録してみてください。
エラー: "アプリケーションを取得できません。 展開で見つからないファイル」または「アプリケーションのダウンロードが中断されました。ネットワーク エラーのチェック、後でやり直してください」
このメッセージは、ClickOnce マニフェストが参照する 1 つ以上のファイルをダウンロードできないことを示します。 このエラーをデバッグする最も簡単な方法は、ダウンロードできないと ClickOnce に示されている URL をダウンロードしてみます。 考えられる原因を次に示します。
- ログ ファイルに "(403) Forbidden" または "(404) Not found" と表示されている場合は、Web サーバーがこのファイルのダウンロードをブロックしないように構成されていることを確認します。 詳細については、「 ClickOnce 配置でのサーバーとクライアントの構成の問題」を参照してください。
- .config ファイルがサーバーによってブロックされている場合は、「.config ファイルを含む ClickOnce アプリケーションをインストールしようとすると、ダウンロード エラーが発生する」を参照してください。
- 配置マニフェストの URL が、アクティブ化に使用される URL とは異なる場所を指しているため
deploymentProvider
、このエラーが発生したかどうかを確認します。 - すべてのファイルがサーバー上に存在することを確認します。ClickOnce ログには、見つからなかったファイルが表示されます。
- ネットワーク接続の問題があるかどうかを確認します。ダウンロード中にクライアント コンピューターがオフラインになった場合は、このメッセージを受け取ることができます。
.config ファイルを持つ ClickOnce アプリケーションをインストールしようとすると、ダウンロード エラーが発生する
既定では、Visual Basic Windows ベースのアプリケーションには 、App.config ファイルが含まれています。 Windows Server 2003 を使用する Web サーバーからインストールしようとすると、セキュリティ上の理由からオペレーティング システムによって .config ファイルのインストールがブロックされるため、問題が発生する可能性があります。 .config ファイルをインストールできるようにするには、[発行オプション] ダイアログ ボックスで [".deploy" ファイル拡張子を使用する] を選択します。
また、 .application、 .manifest、. deploy ファイルに適切にコンテンツ タイプ (MIME の種類とも呼ばれます) を設定する必要があります。 詳細については、Web サーバーのドキュメントを参照してください。
詳細については、「 Windows Server: ロックダウン コンテンツ タイプ」を参照してください。
エラー: アプリケーションの形式が正しくありません。ログ ファイルに "XML 署名が無効です" が含まれています
マニフェスト ファイルを更新し、もう一度署名したことを確認します。 Visual Studio を使用してアプリケーションを再発行するか、Mage を使用してアプリケーションに再度署名します。
サーバー上でアプリケーションを更新したが、クライアントが更新プログラムをダウンロードしない
この問題は、次のいずれかのタスクを完了することで解決される可能性があります。
- 配置マニフェストの
deploymentProvider
URL を調べます。 を指すのと同じ場所deploymentProvider
のビットを更新していることを確認します。 - 配置マニフェストで更新間隔を確認します。 この間隔が 6 時間ごとに 1 回など、定期的な間隔に設定されている場合、ClickOnce はこの間隔が経過するまで更新プログラムをスキャンしません。 マニフェストを変更して、アプリケーションが起動するたびに更新プログラムをスキャンできます。 更新間隔の変更は、開発時に更新プログラムがインストールされていることを確認するのに便利なオプションですが、アプリケーションのアクティブ化が遅くなります。
- [スタート] メニューでアプリケーションをもう一度起動してみてください。 ClickOnce はバックグラウンドで更新プログラムを検出した可能性がありますが、次回のアクティブ化時にビットをインストールするように求められます。
更新中に、次のログ エントリを含むエラーが表示されます。"デプロイ内の参照は、アプリケーション マニフェストで定義されている ID と一致しません"
このエラーは、配置マニフェストとアプリケーション マニフェストを手動で編集し、あるマニフェスト内のアセンブリの ID の説明が他のマニフェストと同期しなくなる原因となったために発生する可能性があります。 アセンブリの ID は、名前、バージョン、カルチャ、公開キー トークンで構成されます。 マニフェストの ID の説明を調べて、違いを修正します。
ローカル ディスクまたは CD-ROM からのアクティブ化が初めて成功したが、以降の [スタート] メニューからのアクティブ化が成功しない
ClickOnce では、展開プロバイダー URL を使用してアプリケーションの更新プログラムを受け取ります。 URL が指している場所が正しいことを確認します。
エラー: アプリケーションを起動できません
通常、このエラー メッセージは、このアプリケーションを ClickOnce ストアにインストールする際に問題が発生していることを示します。 アプリケーションにエラーがあるか、ストアが破損しています。 ログ ファイルは、エラーが発生した場所を示す場合があります。
この問題を解決するには、次の手順を実行します。
- 配置マニフェストの ID、アプリケーション マニフェストの ID、メイン アプリケーション EXE の ID がすべて一意であることを確認します。
- ファイル パスが 100 文字を超えないことを確認します。 アプリケーションに長すぎるファイル パスが含まれている場合は、格納できる最大パスの制限を超える可能性があります。 パスを短くしてから、再インストールしてください。
アプリケーション構成ファイルの PrivatePath 設定は受け入れられません
PrivatePath (Fusion プローブ パス) を使用するには、アプリケーションが完全な信頼アクセス許可を要求する必要があります。 アプリケーション マニフェストを変更して完全な信頼を要求してから、もう一度やり直してください。
アンインストール中に、「アプリケーションのアンインストールに失敗しました」というメッセージが表示される
通常、このメッセージは、アプリケーションが既に削除されているか、ストアが破損していることを示します。 [OK] を選択すると、[プログラムの追加と削除] エントリが削除されます。
インストール中に、プラットフォームの依存関係がインストールされていないことを示すメッセージが表示されます
アプリケーションを実行するために必要な GAC (グローバル アセンブリ キャッシュ) に前提条件がありません。
Visual Studio を使用した発行
Visual Studio での発行が失敗する
対象のサーバーに発行する権限があることを確認します。 たとえば、管理者ではなく通常のユーザーとしてターミナル サーバー コンピューターにログインしている場合、ローカル Web サーバーに発行するために必要な権限がない可能性があります。
URL を使用して発行する場合は、コピー先のコンピューターで FrontPage Server 拡張機能が有効になっていることを確認します。
エラー: Web サイト 'site>'< を作成できません。 FrontPage Server 拡張機能と通信するためのコンポーネントはインストールされていません
発行元のコンピューターに Microsoft Visual Studio Web オーサリング コンポーネントがインストールされていることを確認します。 Express ユーザーの場合、このコンポーネントは既定ではインストールされません。
エラー: ファイル 'Microsoft.Windows.Common-Controls, Version=6.0.0.0, Culture=*, PublicKeyToken=6595b64144ccf1df, ProcessorArchitecture=*, Type=win32'
このエラー メッセージは、ビジュアル スタイルが有効になっている WPF アプリケーションを発行しようとすると表示されます。 この問題を解決するには、「 方法: Visual スタイルを有効にして WPF アプリケーションを発行する」を参照してください。
Mage の使用
証明書ストアの証明書と空のメッセージ ボックスを使用して署名しようとしました
[ 署名 ] ダイアログ ボックスでは、次の手順を実行する必要があります。
- [ 保存された証明書で署名する] を選択します。
- 一覧から証明書を選択します。最初の証明書は既定の選択ではありません。
[署名しない] ボタンをクリックすると、例外が発生します
この問題は既知のバグです。 すべての ClickOnce マニフェストに署名する必要があります。 いずれかの署名オプションを選択し、[OK] を選択 します。
その他のエラー
次の表は、ユーザーが ClickOnce アプリケーションをインストールしたときにクライアント コンピューター ユーザーが受け取る可能性がある一般的なエラー メッセージを示しています。 各エラー メッセージは、エラーの最も可能性の高い原因の説明の横に一覧表示されます。
エラー メッセージ | 説明 |
---|---|
アプリケーションを開始できません。 アプリケーション発行元に問い合わせてください。 アプリケーションを起動できません。 サポートについては、アプリケーション ベンダーにお問い合わせください。 |
これらは、アプリケーションを起動できず、他の特定の理由が見つからない場合に発生する一般的なエラー メッセージです。 多くの場合、これは、アプリケーションが何らかの形で破損しているか、ClickOnce ストアが破損していることを意味します。 |
続行できません。 アプリケーションの形式が正しくありません。 アプリケーション発行元に問い合わせてください。 アプリケーションの検証が成功しませんでした。 続行できません。 アプリケーション ファイルを取得できません。 デプロイでファイルが破損しています。 |
配置内のマニフェスト ファイルの 1 つが構文的に無効であるか、対応するファイルと照合できないハッシュが含まれています。 このエラーは、アセンブリ内に埋め込まれたマニフェストが破損していることも示している可能性があります。 配置を再作成してアプリケーションを再コンパイルするか、マニフェストでエラーを手動で見つけて修正します。 |
アプリケーションを取得できません。 認証エラー。 アプリケーションのインストールが成功しませんでした。 サーバー上のアプリケーション ファイルを見つけることができません。 アプリケーションの発行元または管理者に問い合わせてください。 |
展開内の 1 つ以上のファイルにアクセスするアクセス許可がないため、ダウンロードできません。 これは、Web サーバーから 403 禁止エラーが返されたことが原因で発生する可能性があります。これは、デプロイ内のファイルの 1 つが、Web サーバーが保護されたファイルとして扱う拡張機能で終わる場合に発生する可能性があります。 また、1 つ以上のアプリケーションのファイルを含むディレクトリにアクセスするには、ユーザー名とパスワードが必要な場合があります。 |
アプリケーションをダウンロードできません。 アプリケーションに必要なファイルがありません。 サポートについては、アプリケーション ベンダーまたはシステム管理者にお問い合わせください。 | アプリケーション マニフェストに一覧表示されている 1 つ以上のファイルがサーバー上に見つかりません。 デプロイの依存ファイルをすべてアップロードしたことを確認し、もう一度やり直してください。 |
アプリケーションのダウンロードが成功しませんでした。 ネットワーク接続を確認するか、システム管理者またはネットワーク サービス プロバイダーに問い合わせてください。 | ClickOnce は、サーバーへのネットワーク接続を確立できません。 サーバーの可用性とネットワークの状態を調べます。 |
URLDownloadToCacheFile が HRESULT 'number>' で<失敗しました。 'file>' の<ダウンロード中にエラーが発生しました。 | ユーザーが展開先コンピューターで [セキュリティで保護されたモードとセキュリティ以外のモードを変更する場合に警告する] オプションをインターネット エクスプローラー設定している場合、インストールされている ClickOnce アプリケーションのセットアップ URL が安全でないサイト (またはその逆) にリダイレクトされた場合、インターネットエクスプローラー警告によって割り込みが発生するため、インストールは失敗します。 このエラーを解決するには、次のいずれかのタスクを実行します。 - セキュリティ オプションをオフにします。 - セットアップ URL が、セキュリティ モードを変更するような方法でリダイレクトされていないことを確認します。 - リダイレクトを完全に削除し、実際のセットアップ URL をポイントします。 |
ハード ディスクへの書き込み中にエラーが発生しました。 ディスクに空き領域が不足している可能性があります。 サポートについては、アプリケーション ベンダーまたはシステム管理者にお問い合わせください。 | これは、アプリケーションを格納するためのディスク領域が不足していることを示している可能性がありますが、アプリケーション ファイルをドライブに保存しようとすると、より一般的な I/O エラーが発生する可能性もあります。 |
アプリケーションを起動できません。 ディスクに十分な空き領域がありません。 | ハード ディスクがいっぱいです。 領域をクリアして、アプリケーションをもう一度実行してください。 |
デプロイされたアクティブ化の数が多すぎて、一度に読み込もうとしています。 | ClickOnce は、同時に開始できるさまざまなアプリケーションの数を制限します。 これは主に、ローカル ClickOnce サービスに対するサービス拒否攻撃を悪意のある試行から保護するために役立ちます。同じアプリケーションを連続して繰り返し起動しようとするユーザーは、アプリケーションの 1 つのインスタンスで終わるだけです。 |
ネットワーク経由でショートカットをアクティブ化することはできません。 | ClickOnce アプリケーションへのショートカットは、ローカル ハード ディスクでのみ開始できます。 リモート サーバー上のショートカット ファイルを指す URL を開いて起動することはできません。 |
アプリケーションが大きすぎて、部分信頼でオンラインで実行できません。 サポートについては、アプリケーション ベンダーまたはシステム管理者にお問い合わせください。 | 部分信頼で実行されるアプリケーションは、オンライン アプリケーション クォータのサイズの半分を超えることはできません。既定では 250 MB です。 |