Tengo que convertir la codificación de una salida de cadena de una aplicación VB6 a una codificación específica.¿Cómo puedo determinar mediante programación la página de códigos predeterminada actual de Windows?
El problema es que no sé la codificación de la cadena, debido a que:
De acuerdo con la documentación de Visual Basic 6 al acceder a determinadas funciones API de las cadenas Unicode internas se convierten en cadenas ANSI utilizando el página de códigos predeterminada de Windows.
Por eso, la codificación de la salida de cadena puede ser diferente en diferentes sistemas, pero tengo que saberlo para realizar la conversión.
¿Cómo puedo leer la página de códigos predeterminada utilizando la API de Win32 o, si no hay otra forma, leyendo el registro?
Gracias a quien sugirió la edición para mencionar "ANSI" y mejorar el formato del código ligeramente. Buena idea, lo he editado en consecuencia yo mismo. – MarkJ
Este uso de ANSI es bastante absurdo. Las páginas de códigos de Windows a menudo se denominan páginas de códigos ANSI, porque estaban destinadas a convertirse en estándar; ellos nunca lo hicieron. Usar entonces 'ANSI' para referirse solo al predeterminado es muy confuso y nunca lo he visto usado así. – MicroVirus