Message224606
The buffer size only needs to be capped if WINVER < 0x602. This issue doesn't apply to Windows 8 since it uses the ConDrv device driver instead of LPC.
Prior to Windows 8, WriteFile redirects to WriteConsoleA when passed a console handle. This makes an LPC call to conhost.exe (csrss.exe before Windows 7), which copies the buffer to a shared heap. But a Windows 8 console process instead has actual File handles provided by the ConDrv device:
stdin \Device\ConDrv\Input
stdout \Device\ConDrv\Output
stderr \Device\ConDrv\Output
For File handles, ReadFile and WriteFile simply call the NT system functions NtReadFile and NtWriteFile. The buffer size is only limited by available memory. |
|
Date |
User |
Action |
Args |
2014-08-03 03:36:05 | eryksun | set | recipients:
+ eryksun, terry.reedy, amaury.forgeotdarc, pitrou, vstinner, casevh, davidsarah, neologix, santoso.wijaya, python-dev |
2014-08-03 03:36:05 | eryksun | set | messageid: <1407036965.07.0.90624245079.issue11395@psf.upfronthosting.co.za> |
2014-08-03 03:36:05 | eryksun | link | issue11395 messages |
2014-08-03 03:36:04 | eryksun | create | |
|