我必须将VB6应用程序的字符串输出的编码转换为特定的编码。

问题是,由于这个原因,我不知道字符串的编码:



因此,字符串输出的编码在不同的系统上可能会有所不同,但是我必须知道它才能执行转换。

如何使用Win32 API读取默认代码页,或者-如果没有其他方法,如何通过读取注册表读取默认代码页?

最佳答案

通过使用GetACP-返回默认代码页的Win32 API调用,它可能更加简洁! (默认代码页通常称为“ANSI”)

int nCodePage = GetACP();

同样,许多API调用(例如 MultiByteToWideChar )都接受常量值CP_ACP(零),该值始终为means "use the system code page"。因此,实际上您可能不需要了解当前的代码页,具体取决于您要执行的操作。

关于winapi - 如何以编程方式确定Windows的当前默认代码页?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/909913/

10-11 15:11