[MS] Exploring possible solutions to the inconsistency in how Windows searches case-insensitively for named resources - devamazonaws.blogspot.com
Some time ago, I explained why Windows has trouble finding Win32 resources with accented characters . It boils down to an ambiguity in the Portable Executable specification: It says that the names are treated as case-insensitive, but it does not specify which case-insensitive comparison algorithm to use. The Resource Compiler uses the C locale (which considers the lowercase Latin letters a-z to be counterparts to the uppercase Latin letters A-Z), whereas the resource subsystem uses the user's current locale's case mapping table (which can vary from user to user, but which usually considers lowercase accented letters to be equivalent to the same accent applied to the uppercase version of the lowercase base character). Commenter Jan Ringoš wondered if this could be fixed and offered a few possibilities. The first option is to change the behavior of FindResource to use the C locale first and then use the user locale if there is no match according to the C locale. "I don...