ClickOnceを介して展開される.Net4WPFアプリケーションがあります。
アプリケーションはいくつかのレポートをローカルで生成し、それらをユーザーに表示するため、への参照がありMicrosoft.ReportViewer.WinForms
ます。これらのレポートは.rdlcであり、リソースとしてアプリケーションに埋め込まれています。
最近、新しいスキーマ定義を表示するために、.dllをバージョン10から最新バージョン14にアップグレードしました。問題は、古いバージョンには他の言語でレポートを表示するオプションがなかったということですが、現在では、各言語(de、es、frなど)のデプロイに追加のフォルダーが含まれています。
これらのフォルダーは、ClickOnceインストールにさらに28.6 MBを追加します(これにより、アプリケーションインストーラーのサイズが実質的に2倍になります)。
これらの言語パックは必要ないので、ClickOnceインストーラーを公開するときにそれらを含めない方法はありますか?
そして、これらの言語バージョンの.dllが含まれていない場合、既知の副作用はありますか?
更新:ビルド後のイベントを使用してフォルダーを削除しています。これらのイベントは、一度公開するとクリックする前にフォルダーを削除しますが、まだいくつかの構成があるため、含まれていないと思います。
ClickOnceの公開中に、追加の言語パックを公開から削除できます。
私が抱えていた問題は、[すべてのファイルを表示]チェックボックスをクリックしなかったことであり、言語dllがすべてベースdllに含まれているように見えました。これを行うと、ReportViewerは、dllが含まれている言語でのみ表示されます。
言語dllが含まれていない場合、ReportViewerは基本英語バージョンを使用します。これは、システム言語に特定のdllセットがない場合と同じ動作です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加