Microsoftが5月上旬に開催した開発者向けのイベント「」と同時期に、Visual Studio 2017の最新バージョンが公開されました。
しかし、Visual Studio 2017の最新バージョンを利用した場合に、ComponentOneの一部で不具合が発生してしまうことが判明しています。
現象
この現象が発生するのは、UWPアプリでのみです。
ComponentOneで提供しているUWP用のコンポーネントを参照したプロジェクトを、Visual Studio 2017の最新バージョン「15.7.3」(※2018年6月5日時点)でビルドすると、下記のようなビルドエラーが発生します。
MakePri : error 0x80073b0f: Processing Resources failed with error: エントリが重複しています。 MakePRI : error 0xdef00532: Conflicting values for resource 'Files/C1.UWP/Themes/C1Button.xbf'
原因
このエラーが発生する原因は不明です。
しかし前バージョンのVisual Studioで発生が確認されていないことなどから、IDE側つまりVisual Studio 2017(15.7.1)に起因する問題であることが想定されます。手元のVisual Studio 2017でも確認しました。
MicrosoftのDeveloper Communityにこの問題は報告されています。
グレープシティの社員も含め、同様の問題に直面したVisual Studioユーザーがコメントを投稿していました。
対策
この問題を解決するための方法は、Visual Studio側からもコンポーネント側からも有効なものが提示されていません。
Visual Studioを元のバージョンに戻すか、Visual Studio 2015 を利用する以外に回避できないようです。
※追記 2018年6月7日
プロジェクトファイル(.csproj)に、以下のコードを追加するとビルドエラーを回避することができるようです。
<DisableEmbeddedXbf>false</DisableEmbeddedXbf>
追加する位置は、<PropertyGroup>
内です。
※追記 2019年1月21日
この問題はVisual Studio 2017(バージョン 15.7.8)で修正されました。
Visual Studioを最新バージョンに更新してご利用ください。
ナレッジベース
グレープシティ製品を利用中に発生している問題のため、この問題もWebサイトのナレッジベースで情報を公開しています。
ナレッジベースの「Visual Studio 2017の15.7.0以降のバージョンを使用するとビルドエラーが発生する」を見る
ナレッジベースでは、製品の不具合や使用方法など関連する情報を公開しています。
現在サポートサービス期間中の製品だけでなく、サポートサービスの提供を終了した旧製品(.NET Frameworkの旧版対応製品、Visual Basic 6.0用のActiveXコントロールなど)についても、引き続き公開中です。
参考情報
グレープシティは5月22日から開催する「de:code 2018」に協賛しています。
【脱 Excel・システム化への第一歩!正しいコンポーネント選定のためのグリッド&スプレッドシート講座】
業務のシステム化と Excel ライクな UI の両立…。実は昔から存在するこの難題に対し、グリッドとスプレッドシート UI の正しい選び方をご紹介します。https://t.co/vFgIPTLdpJ #decode18 pic.twitter.com/Sc3WTsujMD— Microsoft Tech (@msdevjp) 2018年5月16日