KERNEL: Implement undocumented SetCPGlobal API call

Troy Rollo wine at
Tue Mar 29 15:59:38 CST 2005

On Tue, 29 Mar 2005 15:03, Dmitry Timoshkov 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), but:

- the call has some fairly obvious uses such that it is not out of the 
question for an app to use it;
- similar API calls to change the OEM code page are documented;
- documented facilities in the API necessarily imply the existence of this API 
call; 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.

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 

Ideally the altered code page setting would be inherited by any child process 
created by the parent.

More information about the wine-devel mailing list