"James Hawkins" truiken@gmail.com writes:
By this definition, for any particular property requested, the size returned should be exactly the same for both the A and W call. This eliminates the need for a W size variable, and in fact, setting the returned A size by manipulating the returned W size (the usual divide by sizeof WCHAR) would be wrong. Have I messed up somewhere in my logic?
For the A size TCHARs are bytes, not logical characters, so there isn't a 1:1 equivalence with the W size. The only way to return the correct size is to convert with WideCharToMultiByte and return the resulting length. That's how all A functions work.