misc.log

日常茶飯事とお仕事と

lc.exe について

2018年に関与したプロジェクトのWikiに自分が書いていた説明を転記しておきます(記載: 2021/10/18)。もう使わないだろうけれど。

lc.exe概要

License Compiler(ライセンスコンパイラー)。Visual Studioでライセンス情報をアセンブリーに埋設する必要がある場合、その処理を行うプログラム。ビルド時に必要に応じて自動的に実行されるが、ライセンス情報の取り込み等に問題がある場合はこのプログラム名を含めたエラーメッセージが表示されることがある。

ソースファイルをソリューションエクスプローラーから「すべて表示」にした場合に「licenses.licx」というようなファイルがある場合はライセンス情報の埋め込みが必要で、このプログラムがビルド時に自動的に実行されている。

グレープシティ製品を利用した場合はたいていこのプログラムがビルド時に動いている。

licenses.licxファイルの生成

licenses.licxファイルは手作業で書くことも不可能ではないが、通常はライセンス管理対象のコントロールをフォームに貼り付けた際に自動生成される。そのため、グレープシティ製品のコントロールなどをコード内から動的に生成する用法の場合、このファイルがないというエラーがデバッグ実行やビルド時に発生することがある。その場合、ダミーのフォームを用意して一度SPREADなどを貼付すれば生成される。生成されたあとはダミーフォームも貼り付けたコントロールも破棄してかまわない(licenses.licxは消えない)。