LoadLibrary経由で外部DLL(私たちの制御下にない)をロードすると、これらのDLLの静的にリンクされたCRTがファイバローカルストレージを割り当てられないという問題が発生します。これはmskb 193462に似ていますが、これはFLSであり、そのうち128個しかありません。静的にリンクされたCRTの数が多すぎるためflsの制限を回避しますか?
問題を回避する便利な方法はありますか? CRTはGetProcAddressを使ってFlsAllocを検索しています(それはXPでは決して存在しなかったためです)ので、本当に必要なのでしょうか?
(これはFlsAllocが実際に存在するVistaでは、上で、DLLがMSVC8を使用しているように見える)
FlsAllocにパッチを当てようとすると、あまりにも恐ろしいですが、それらのDLLのほとんどは実行時に(LoadLibrary経由で)読み込まれているので技術的にはおそらく可能。 – Mook