c++ - lpszclassname - wm_paint




Diferencia entre WinMain y WWinMain (2)

En Windows XP, si una entrada de la aplicación es WinMain, ¿Windows convierte la línea de comandos de Unicode a Ansi y la pasa a la aplicación?

Sí.

Si el parámetro de la línea de comando debe estar en Unicode (por ejemplo, el nombre del archivo Unicode, la conversión hará que falten algunos caracteres), ¿eso significa que debo usar wWinMain como la función de entrada?

Sí, deberías, si quieres manejar correctamente los argumentos Unicode a tu programa.

La documentación para WinMain () en MSDN también está de acuerdo.

Sin embargo, también puede usar GetCommandLineW para recuperar la línea de comandos específicamente en Unicode.

La única diferencia es que Winmain toma char * para el parámetro lpCmdLine, mientras que wWinMain toma wchar_t *.

En Windows XP, si una entrada de la aplicación es WinMain, ¿Windows convierte la línea de comandos de Unicode a Ansi y la pasa a la aplicación?

Si el parámetro de la línea de comando debe estar en Unicode (por ejemplo, el nombre del archivo Unicode, la conversión hará que falten algunos caracteres), ¿eso significa que debo usar wWinMain como la función de entrada?


¡Windows XP hacia arriba es unicode por defecto! Y por lo tanto, no se requiere conversión. El cargador de C ++ Runtime se encarga de que el argumento pase a la aplicación. La API estándar de Win32 dicta que la entrada principal es WinMain (...).





unicode