"Troy Rollo" wine@troy.rollo.name wrote:
What app does depend on it?
I can't name a specific app that depends on it already (other than Windows login management processes),
I wonder then how did you discover its existence and syntax and how did you test its real behaviour?
but:
- the call has some fairly obvious uses such that it is not out of the
question for an app to use it;
I'd say that an obvious one is SetThreadLocale.
- similar API calls to change the OEM code page are documented;
What are they? Could you list that API calls?
- documented facilities in the API necessarily imply the existence of this API
call;
and this API has enough power to break an app without a notice.
and
- I am considering using it myself.
While the MultiByteToWideChar API can have its behaviour varied by changing the first parameter from CP_ACP to some global, the *A calls cannot. Thus this API call may be important for a server app not compiled for Unicode (or which uses C libraries without a Unicode interface) which receives, for example, file names from a client application.
Do you have an evidence that Windows does it in the same way?
In fact I had an enquiry a week or so ago from our London office which involved a problem for which the use of this API call is the only reasonable solution.
Ideally the altered code page setting would be inherited by any child process created by the parent.
No. It's better to change the locale of your system to an appropriate one.