Wine 8 reverts OEMCP from 1250 to 1252

Questions about Wine on Linux
Locked
Eugoe
Newbie
Newbie
Posts: 1
Joined: Thu Jun 08, 2023 1:02 pm

Wine 8 reverts OEMCP from 1250 to 1252

Post by Eugoe »

I maintain my website from a couple of apps written in VFP. Did that from W7 for years, but then I retired and could finally kiss M$ goodbye. Switched to running them from wine (first under ubuntu, now under mint 21.1), and everything went smoothly, with minor forgivable glitches, until a couple of weeks ago. Then something updated and all wine apps, even notepad.exe, would crash if I touched the clipboard. Found my wine 6 was too old, updated to stable 8. And then I lost control over the codepage.

VFP is not unicode, never was, so I had to set the OEMCP like this:

Code: Select all

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage]
"ACP"="1250"
"MACCP"="10000"
"OEMCP"="852"
...which worked fine between 2019 and now. It still works, in the sense that I can write these values in the registry, but that has no effect. Of the five characters I need (šđžčć and ŠĐŽČĆ), only š and ž pass through, the čćđ are haircut to ccd - can't type them, can't bring them via clipboard from the host system (can internally, though, if I find them).

The only related thread I found is this, from 2007 (!): viewtopic.php?t=5989 and near the end it says „The registry key you attempting to change is automatically reset by Wine. That's why you have to have correct locale settings outside of Wine.“ Which I checked, my LANG=sr_RS.UTF-8 as it should be and as it always was, but now it doesn't work anymore.

So, two questions: why is this happening, why is wine not accepting the OEMCP and overwriting it with american, and how to fix this?
Locked