Visual Studio 2017で、ビルド時に「licenses.licx: ライセンス ファイルをバイナリ リソースに変換できませんでした」エラーが発生する

文書番号 : 40341     文書種別 : 技術情報     登録日 : 2017/05/12     最終更新日 : 2017/05/18
文書を印刷する
対象製品
.NET 製品共通
詳細
Visual Studio 2017で、ビルド時やランタイムライセンスの作成時に、以下のようなエラーが発生する場合があります。

エラー メッセージ:
"licenses.licx: ライセンス ファイルをバイナリ リソースに変換できませんでした。ファイルまたはアセンブリ 'file:///C:¥Program Files (x86)¥Microsoft Visual Studio¥2017¥Enterprise¥Common7¥IDE¥lc.exe'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。"

対象製品
ASP.NET用コンポーネント
(SPREAD for ASP.NET、InputMan for ASP.NET、ActiveReports for .NETなど)

原因
本エラーはVisual Studio 2017の問題により発生しています。

Visual Studio 2017 でアプリケーションをビルドすると "licenses.licx: ライセンス ファイルをバイナリ リソースに変換できませんでした" エラーが発生する

https://support.microsoft.com/ja-jp/help/4022463/licenses-licx-could-not-transform-licenses-file-into-a-binary-resource


Visual Studio 2017はライセンスファイル(.licxファイル)をビルドするために、.NETライセンスコンパイラ(lc.exe)をロードします。この時、lc.exeを検索するために、レジストリから環境に導入されているSDKのインストールパスを取り出します。しかし、.NET Framework 4.6.1以降のSDKでは、インストールパスが格納されているレジストリ箇所、およびSDKのフォルダ構成が異なるため、レジストリ値を取り出す事ができず、lc.exeの読み込みに失敗して、本エラーが発生します。

回避方法
この問題を回避するには、ビルド環境に「Windows SDK for .NET Framework 3.5 SP1」をインストールします。
これにより、Windows SDKのインストールパスを読み込むようになるため、エラーを回避できます。

Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1

https://www.microsoft.com/en-us/download/details.aspx?id=3138

関連情報