USBテストプログラムのDLLにVCランタイムが入っていなかったので修正しました
5月12日に公開したC#版、USBテストプログラムを更新しました。
あるお客様からDLLの読み込みでエラーが発生するとのご連絡をいただきましたが、調べていくと、DLLの中でvcruntime140.dll等を要求しており、それがDLLに含まれていなかったので、Visual Cのランタイムが入っていないPCで動作させると下の図のようなエラーが出てしまうようでした。
Visual C++でEXEやDLLにランタイムを埋め込むには、構成プロパティ→C/C++→コード生成の中のランタイムライブラリを「マルチスレッド(/MT)」にすればよいようです。
DLLのサイズは153kB→776kBに増えました。
C#のアプリケーションのほうは.NETで動いているので別途ランタイムDLLが必要ということは特になかったのですが、DLLのほうはC++で作っていたためDLLにランタイムを入れておかなければいけなかったようです。
| 固定リンク
コメント