2012-08-12 35 views
37

ClickOnceアプリケーションでは、新しいファイルを作成するときに現在のファイルを置き換えるか、別のディレクトリにインストールすることはできますか?私が得るエラーは:ClickOnceアプリケーションが現在インストールされているファイルを置き換えます

同じIDを持つアプリケーションが既にインストールされているため、このアプリケーションをインストールできません。このアプリケーションをインストールするには、 このアプリケーションのマニフェストバージョンを変更するか、既存のアプリケーション をアンインストールしてください。

答えて

73

エラーメッセージには、次の2つのオプションがあります。

まず、開発者はClickOnceマニフェストのバージョン番号を変更する必要があります。これは、プロジェクト設定のClickOnceタブで行います。 ClickOnceのバージョンには、アセンブリ(アセンブリ)のバージョンと共通するものはありません。

もう1つの方法は、アプリケーションをアンインストールすることです。残念ながら、これは手動で行う必要があります。 ClickOnceの展開フォルダ(C:\Users\username\AppData\Local\Apps\2.0)を見つけて、手動ですべてのフォルダの内容を削除する必要があります。これは、コマンドラインから

rundll32 dfshim CleanOnlineAppCache 

コマンドを呼び出すことによっても実行できます。

+0

素晴らしいありがとうございます。 –

+2

アプリを公開してclickonceフォルダのコンテンツを完全に消去した後も、同じ問題が発生していました。助けてくれてありがとう! –

+0

フォルダを手動で消去しようとしましたが、他のアプリケーションのマニフェストがあります。完全な削除は成功しませんでしたが、削除とコマンドの組み合わせにより、新しいインストールが進められました。 – BiLaL

1

私はまた、rundll32 dfshim CleanOnlineAppCacheまたはmage.exe -ccの両方が動作していないように見えますが、私はまだ同じエラーが発生します。

デプロイメントフォルダを手動で削除しました。

Windowsでは、  XPでは、展開フォルダへのパスはC:\Documents and Settings\UserName\Local Settings\Appsになります。

3

このエラーが発生したのは、同じプログラムに対して2つの異なるインストール場所が必要だったからです。具体的には、Program_Aはオンラインで2つの場所に公開され、プログラム内の小さなものを変更した後、両方を同じマシンにインストールして、別のClickOnceリンクからインストールしたかったのです。

そのエラーを受けた後、マニフェストを調整しようとするのではなく、オプションを変更しました。プロジェクト設定 - >公開 - >オプション - > [公開名、スイート名:、製品名:]を編集しました。 3つすべてを変更する必要はありません。

これで両方のインストールが実行されました。 ClickOnceは別のディレクトリにインストールされますが、最初のデスクトップショートカットが削除されます。

そのルートに行きたくない場合は、マニフェスト情報がここにあります。
https://msdn.microsoft.com/en-us/library/ws1c2fch.aspx

通常、マニフェストはbin/debug(release)/アプリケーション名。アプリケーションの下にあります。

+0

ありがとう@Greg。それは最高の答えです! – jonathana

関連する問題