日刊OpenLibSys

ビルド・ビルド・ビルド!!

こんにゃくブームもようやく一段落し、エンジン全開です!!

今日は、DLL とデバイスドライバの開発を行っています。とりあえず、NT4 でも動作することを確認し一安心。ソースコードもだいぶ整理したので、SysInfo よりはずっと読みやすくなったんじゃないかと思います。

問題は、98/Me 用の仮想デバイスドライバ・・・要ります?
要りますよねぇ~やっぱり。今作らないと永遠に作れませんもんねぇ~。

あっ、そうそう。

最初 NT4 で DLL がロードできず困っていたのですが、よくよく見るとインポートライブラリに msvcr80.dll が含まれているではありませんか!!おいおい、そんなのに依存した DLL いらねぇ~よ!!と思い試行錯誤したところ、必要なライブラリをスタティックリンクすることができました。ファイルサイズは 12KB から 60KB に増えましたが、msvcr80.dll をインストールしている人は少ないと思うのでまぁ良いでしょう。

気になる方法は、

プロジェクトのプロパティページ > 構成プロパティ > プロジェクトの規定値 > MFC の使用

を「標準 Windows ライブラリを使用する」から「スタティックライブラリで MFC を使用する」に切り換えていったんビルド。MFC を使っていないので、当然のように大量のエラーが発生するわけですが、「標準 Windows ライブラリを使用する」に戻してからビルドするとあら不思議、msvcr80.dll に依存しない大きな DLL が生成されるではありませんか!!

コンパイルオプション等ちゃんとチェックはしていませんが、こんな方法もあるよぉ~ということで関係各位??には有用かもしれない情報ということでメモっておきます。

おすすめ

1件の返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です