SetConsoleScreenBufferSize的奇怪之处

1 LastError不能替代函数返回值。

  SetConsoleScreenBufferSize调用失败时,使用GetLastError会返回错误。

  但是,当其调用成功时,则不会设置LastError为ERROR_SUCCESS

  即:对于这种函数,应当先行判断函数返回值,一旦错误才使用GetLastError得到错误码;而不能简单的使用GetLastError来判断函数是否成功。

2 SetConsoleScreenBufferSize的参数值不符合MSDN的描述。

  MSDN上描述:参数应当传入COORD,其X/Y应当至少大于SM_CXMIN/SXCYMIN。

  但是实际的情况并非如此,大量的尺寸都会返回87错误。原因未知。32位/64位程序都表现此问题。

 

测试环境:

WINDOWS SERVER 2003 64

VS2005 BASIC

 

posted @ 2013-12-24 20:36  谢鸣  阅读(531)  评论(0编辑  收藏  举报