ReadConsoleOutputCharacter功能从指定位置开始,从控制台屏幕缓冲区的连续单元格中复制多个字符。
BOOL ReadConsoleOutputCharacter(
HANDLE 【hConsoleOutput】, | //控制台屏幕缓冲区的句柄 |
LPTSTR 【lpCharacter】, | //接收字符的缓冲区地址 |
DWORD 【nLength】, | //要读取的字符数组数 |
COORD 【dwReadCoord】, | //要读取的第一个单元格的坐标 |
LPDWORD 【lpNumberOfCharsRead】 | //读取单元格数的地址 |
); |
参数
【hConsoleOutput】
标识控制台屏幕缓冲区。句柄必须具有GENERIC_READ权限。
【lpCharacter】
指向缓冲区,接收从屏幕缓冲区读取的字符。
【nLength】
指定要读取的屏幕缓冲区字符单元格数。【lpCharacter】参数指向的缓冲区的大小应为【nLength】 * sizeof(TCHAR)。
【dwReadCoord】
指定要读取的屏幕缓冲区中第一个单元格的坐标。COORD结构的X成员是列,Y成员是该行。
【lpNumberOfCharsRead】
指向接收实际读取的字符数的32位变量。
返回值
如果函数成功,返回值不为零。
如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.
备注
如果要读取的字符数超出指定的屏幕缓冲行的末尾,则从下一行读取字符。如果要读取的字符数量超出屏幕缓冲区的结尾,则读取屏幕缓冲区末尾的字符。
Windows NT:此函数使用控制台当前代码页中的Unicode字符或8位字符。控制台的代码页最初默认为系统的OEM代码页。要更改控制台的代码页,请使用SetConsoleCP或SetConsoleOutputCP功能,或使用CHCPsk或mode con cp select=命令。
也可以看看
COORD, ReadConsoleOutput, ReadConsoleOutputAttribute, SetConsoleCP, SetConsoleOutputCP, WriteConsoleOutput, WriteConsoleOutputAttribute, WriteConsoleOutputCharacter