拡張カーネル v14b 以降が入っていると Yarai のインストール失敗する理由
Yarai のインストールにうちのアップデートパックを導入していると失敗するという報告があったので調査してみました。
条件は、
拡張カーネルv14b以降/v15以降を導入していることでした。
というわけでどういうことなのか調べてみました。
v14bで追加された関数。 CreateActCtxW が原因なのですが、これをコールしている、 Microsoft 製の DIFxApp.dllの動作がどうもおかしいようです。
(ドライバインストールフレームワーク)
通常、 CreateActCtx は関数に失敗すると、 INVALID_HANDLE_VALUE を返すのですが、 関数がなかった時の返り値が 0 として処理されています。
関数がなかった場合は正常に処理が続行しますが、 INVALID_HANDLE_VALUE の場合エラーで終了してしまうわけです。
この処理を INVALID_HANDLE_VALUE から 0にしてもいいのですが、他のアプリで不具合でないかなぁ|・ω・)?
Comments