Workaround for "console window not drawing" bug on Wine.

This commit is contained in:
LoRd_MuldeR 2011-08-26 03:28:34 +02:00
parent 74d550038f
commit ec8db207f5
3 changed files with 18 additions and 16 deletions

View File

@ -72,23 +72,24 @@ any ACM Codecs or DirectShow/DMO filters! And it will NOT install anything of th
<a name="be0a8459"></a><b>What platforms does LameXP run on?</b><br>
<br>
LameXP is currently being developed on the following platforms:<br><ul>
<li>Microsoft Windows 7 with Service Pack 1 (32-Bit and 64-Bit editions)
<li>Microsoft Windows XP with Service Pack 3</ul>
<li>Microsoft Windows 7 (32-Bit and 64-Bit editions) with <a href="http://technet.microsoft.com/en-us/windows/gg635126" target="_blank">Service Pack 1</a>
<li>Microsoft Windows XP with <a href="http://technet.microsoft.com/en-us/windows/bb794714" target="_blank">Service Pack 3</a></ul>
<br>
The following platforms should work, but aren't tested extensively:<br><ul>
<li>Microsoft Windows 7 without Service Pack (32-Bit and 64-Bit editions)
<li>Microsoft Windows Vista (32-Bit and 64-Bit editions)
<li>Microsoft Windows XP with Service Pack 2 or even older
<li>Microsoft Windows 2000
<li>Microsoft Windows Server 2008
<li>Microsoft Windows Server 2008 R2
<li>GNU/Linux using Wine (native Linux version planned)</ul>
<li>Microsoft Windows Vista (32-Bit and 64-Bit editions) with <a href="http://technet.microsoft.com/en-us/windows/dd262148" target="_blank">Service Pack 2</a>
<li>Microsoft Windows XP x64 Edition with <a href="http://www.microsoft.com/download/en/details.aspx?id=17791" target="_blank">Service Pack 2</a>
<li>Microsoft Windows 2000 with <a href="http://www.microsoft.com/download/en/details.aspx?id=4127" target="_blank">Service Pack 4</a>
<li>Microsoft Windows Server 2008 with <a href="http://technet.microsoft.com/en-us/windows/dd262148" target="_blank">Service Pack 2</a>
<li>Microsoft Windows Server 2008 R2 with <a href="http://technet.microsoft.com/en-us/windows/gg635126" target="_blank">Service Pack 1</a>
<li>GNU/Linux using <a href="http://www.winehq.org/" target="_blank">Wine</a> v1.2.2+ (native Linux version planned)</ul>
<br>
The following "legacy" platforms are NOT supported any longer:<br><ul>
<li>Microsoft Windows NT 4.0
<li>Microsoft Windows Millennium Edition
<li>Microsoft Windows 98
<li>Microsoft Windows Millennium Edition (*)
<li>Microsoft Windows 98 (*)
<li>Microsoft Windows 95</ul>
<br>
(*) Some people claim that LameXP can run on Windows 98 SE or Millennium Edition with the help of <a href="http://sourceforge.net/projects/kernelex/" target="_blank">KernelEx</a>.<br><br>
<br><br>

View File

@ -30,7 +30,7 @@
#define VER_LAMEXP_MINOR_LO 3
#define VER_LAMEXP_TYPE Alpha
#define VER_LAMEXP_PATCH 15
#define VER_LAMEXP_BUILD 666
#define VER_LAMEXP_BUILD 669
///////////////////////////////////////////////////////////////////////////////
// Tools versions

View File

@ -492,8 +492,8 @@ void lamexp_init_console(int argc, char* argv[])
const int flags = _O_WRONLY | _O_U8TEXT;
int hCrtStdOut = _open_osfhandle((intptr_t) GetStdHandle(STD_OUTPUT_HANDLE), flags);
int hCrtStdErr = _open_osfhandle((intptr_t) GetStdHandle(STD_ERROR_HANDLE), flags);
FILE *hfStdOut = _fdopen(hCrtStdOut, "w");
FILE *hfStderr = _fdopen(hCrtStdErr, "w");
FILE *hfStdOut = (hCrtStdOut >= 0) ? _fdopen(hCrtStdOut, "w") : NULL;
FILE *hfStderr = (hCrtStdErr >= 0) ? _fdopen(hCrtStdErr, "w") : NULL;
if(hfStdOut) *stdout = *hfStdOut;
if(hfStderr) *stderr = *hfStderr;
}
@ -506,8 +506,9 @@ void lamexp_init_console(int argc, char* argv[])
EnableMenuItem(hMenu, SC_CLOSE, MF_BYCOMMAND | MF_GRAYED);
RemoveMenu(hMenu, SC_CLOSE, MF_BYCOMMAND);
SetWindowLong(hwndConsole, GWL_STYLE, GetWindowLong(hwndConsole, GWL_STYLE) & (~WS_MAXIMIZEBOX));
SetWindowLong(hwndConsole, GWL_STYLE, GetWindowLong(hwndConsole, GWL_STYLE) & (~WS_MINIMIZEBOX));
SetWindowPos(hwndConsole, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED);
SetWindowLong(hwndConsole, GWL_STYLE, GetWindowLong(hwndConsole, GWL_STYLE) & (~WS_MAXIMIZEBOX) & (~WS_MINIMIZEBOX));
SetWindowPos(hwndConsole, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED);
}
}
}