所以我想使用 SetThreadLocale 将线程代码页设置为 UTF8。到目前为止,我一直在使用 atl 字符串转换宏的第二个参数,例如“CT2A(szBUF, CP_UTF8)”来执行此操作。但是我希望能够在开始时使用 SetThreadLocale() 设置一次线程代码页,而不必再次使用转换宏的第二个参数。
我该怎么做呢?SetThreadLocale 不会采用像 CP_UTF8 这样的代码页参数,而只是一个 LCID。我应该提供哪些参数 SetThreadLocale 来实现这一点?
请记住,我没有特别的语言。我得到的字符串可能是日语、韩语、英语等。到目前为止,在将 CP_UTF8 指定为转换宏的第二个参数时,我对这种字符串组合没有任何问题。您可能会问“那么为什么不继续使用第二个参数”。回答,“因为处理代码的团队成员很容易忘记它。如果它能够使用转换宏的默认 1 参数版本正常工作,那就太好了。”