B>В чем может быть проблема?
Положа руку на правое сердце, скажу — я не знаю, как работает ф-ция setlocale.
Но предположение есть
Это может быть связано с тем, что DLL — это отдельнное адресное пространство, а, может быть и отдельный поток (а может и вообще отдельный процесс). Может быть, следует при инициализации (загрузке) DLL-ки в ней делать setlocale?