"Eric Pouech"eric.pouech@voila.fr writes:
if we want to go into this, there are a few points to agree on first:
- since console handles can be inherited, the Wine console window should
be run in a different process than the one which uses the console (and add communication means between the first process, and the process rendering the console)
- how should we know a program needs either a simple or a complex
console (we could use a registry key in the per process area)
We need a separate process yes. I was thinking of something like a 'wineconsole' Winelib app. Then if you want to run an app with a separate console you use wineconsole instead of wine to start it. A new wineconsole could also be launched when the app does an AllocConsole, or some other function that requires a complex console.
The communication with the console can probably go through the server. Input events can simply be put in the queue by wineconsole using WriteConsoleInput. Output should probably go to a server screen buffer object, which would then signal wineconsole that its contents changed.