Alain Bench wrote: > > GetOEMCP() or GetConsoleOutputCP() (I don't know the difference) > > I seem to understand GetOEMCP() gives fixed system default OEM CP, > while GetConsoleOutputCP() gives current console OEM CP. After a user or > app has done a "chcp 28591" on a French Windows, GetOEMCP()=850 while > GetConsoleOutputCP()=28591.
Thanks for explaining. > > The application needs to know where it intends to send a certain > > string of text. > > And this app needs to know which Windows specific Get*CP() to call, > then how to canonicalize charset name. So a Win32 console app can't use > libcharset, but must more or less duplicate it? There is no text/graph > mode hint an app could give to libcharset, to directly obtain the wanted > charset? Yes. I don't want to introduce new API variants for just a single platform (because when you do that, the outcome is such baroque like the Microsoft .NET API). You have the source code of the locale_charset() function, and it doesn't change very often. It's easy for you to duplicate it, replacing GetACP() with GetConsoleOutputCP(). > >> [GnuPG] on Win32 uses directly GetConsoleOutputCP(), unless it fails > >> then GetACP() > > I should add that the frontend calling GnuPG, and wanting us to > output ANSI text, has the duty to make GetConsoleOutputCP() fail for us > returning 0. The Bat!™ makes that, I don't know how. Interesting hack... Bruno _______________________________________________ Gnupg-users mailing list Gnupg-users@gnupg.org http://lists.gnupg.org/mailman/listinfo/gnupg-users