実現したいこと
ClickOnceアプリで最新版をリリースした際に、自動的に更新をかける
(ユーザーが操作しなくても自動的に最新版に更新される)
前提
C# Windows Formで作成したClickOnceアプリを運用しています。
アプリ内部で、定期的に更新チェックを行い、最新版があれば強制的にUPDATEしてアプリを再起動する仕組みを構築して運用しています。
しばらくぶりにプログラムを修正し、発行を行いました。
発生している問題・エラーメッセージ
アプリを起動すると更新処理が実行されますが、DeploymentExceptionが発生して更新されません。
厳密な名前の署名はこのアセンブリ Microsoft.mshtml.dll に対して無効です。
該当のソースコード
CSharp
1ApplicationDeployment deploy = ApplicationDeployment.CurrentDeployment;2 3deploy.Update();
試したこと
アプリロジック自身には問題はなく、ClickOnce部分の処理に問題があるとは思い、ClickOnce の署名回りの再設定してみましたが変わらず。Microsoft.mshtml.dll
の署名に関する問題ではと思いますが、アプリ自体では使っていないのでどこを設定してよいか分かりません。
アプリ名.application
を直接起動した場合は更新できます。
以前開発に使っていたPCとは違うPCで開発しているので、開発環境によるものがあるのかもしれません。
以前リリースしたのがかなり前なので記憶があやふやですが、以前はこのエラーは出ていなかったと思います。
※旧プログラムから今回の修正プログラムへの自動更新は行われます。
さらに修正して再発行した場合にエラーになります。
補足情報(FW/ツールのバージョンなど)
- Windows11 Pro
- VisualStudio 2015 Pro
- .NET Framework4
0 コメント