2003-03-27 [長年日記]

TAPI_CURRENT_VERSION

2.0.13と2.1.19がWindows 95で起動しなくなったという報告を頂いたので調べてみたところ、TAPI_CURRENT_VERSIONが原因だったようです。元々Platform SDKをアップデートしたのが原因であろうことは想像できたのですが、まず思いついたのは、WINVER、_WIN32_WINNT、_WIN32_IEの値でした。でも、WINVERと_WIN32_WINNTは0x400にセットしてあるし、_WIN32_IEはデフォルトで0x501になっていましたが、報告していただいた環境のIEは5.01とのこと。

試しに、2.1.18と2.1.19をdumpbin /importsで調べてみたところTAPI32.DLLからのインポート周りが異なりました(なぜか2.1.18ではインポートテーブルにエントリがない)。というわけで、tapi32.hを見てみたところTAPI 1.4で使うには、TAPI_CURRENT_VERSION=0x00010004にしろというお達しが。これをmakefileに入れてみたところ、起動するようになったようです。

念のため、ついでに_WIN32_IEも0x400にしておきました。新しい機能が必要なわけでもありませんし。

籔中さんお付き合いいただいてありがとうございました。