SetConsoleScreenBufferInfoEx ...错误?

2024-01-13

每次我运行此代码(在 Win7 上)时,控制台都会在两个方向上缩小 1 个字符。

int wmain( INT argc, WCHAR **argv )  
{  
    CONSOLE_SCREEN_BUFFER_INFOEX csbi;  
    csbi.cbSize = sizeof(CONSOLE_SCREEN_BUFFER_INFOEX);  
    GetConsoleScreenBufferInfoEx(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);  
    wprintf(L"Window: %u x %u\n", csbi.srWindow.Right - csbi.srWindow.Left + 1, csbi.srWindow.Bottom - csbi.srWindow.Top + 1);  
    SetConsoleScreenBufferInfoEx(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);  
    return 0;  
}

我怀疑这是预期的行为。有记录吗?在较新版本的 Windows 中是否更好?这是运行几次的剪辑。

p:\test\release> test.exe
窗口:99 x 41

p:\test\release> test.exe
窗口:98 x 40

p:\test\release> test.exe
窗口:97×39


Windows 控制台 API 中长期存在的“无法修复”错误。 您只需要做其他人所做的事情,并在阅读后增加 window.Bottom 和 window.Right 。

GetConsoleScreenBufferInfoEx(GetStdHandle(STD_OUTPUT_HANDLE), &csbi)
++csbi.srWindowBottom;
++csbi.srWindowRight;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SetConsoleScreenBufferInfoEx ...错误? 的相关文章

  • 在 Windows 中删除大文件夹的最快方法是什么?

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我想删除一个包含数千个文件和文件夹的文件夹 如果我使用 Windows 资源管理器删除该
  • 阻止Winform最大化?

    我想防止我的桌面应用程序最大化 它不应该以任何方式最大化 通过双击标题栏 或通过单击键盘上的 Windows 向上箭头等 gt 我禁用了这两个最大化框 and 最小化框 gt 我还设置了最大尺寸 and 最小尺寸对于我的 WinForm仍然
  • 更换桌面壁纸/在桌面上绘制

    我想对我的 Windows 桌面进行一些自定义绘图 以便它看起来可以替换桌面背景 壁纸 我的第一次尝试是获得 DCdesktopListView并绘制它 IntPtr desktopDC GetWindowDC desktopListVie
  • 更新到版本 2.1.1.0 Edge(或稳定版)后,Windows 版 Docker 停留在“Kubernetes 正在启动”状态

    我最近在 Windows 10 计算机上将 Docker for Desktop 更新到最新的 Edge 通道版本 2 1 1 0 不幸的是 更新后 Kubernetes 不再工作 因为它始终停留在 Kubernetes 正在启动 到目前为
  • 在 CGI 模式下运行时如何覆盖 PHP 配置

    有一些教程告诉我如何在 CGI 模式下运行时覆盖 PHP 配置 但我仍然很困惑 因为很多人都认为服务器运行在 Linux 上 虽然我需要这样做also在 Windows 上 我的主机确实使用 Linux 但我的本地开发计算机使用 Windo
  • 编译 Windows 内核模式驱动程序 x64 时出现链接器错误

    我正在尝试编译此处找到的 sysvad 音频驱动程序示例 https github com Microsoft Windows driver samples tree master audio sysvad https github com
  • crt0 是否加载 msvcrt.dll?

    我想弄清楚标准 C 函数是什么样的printf 在 Windows 环境下加载到内存中 我知道crt0 obj准备堆栈 调用int main int argc char argv 然后使用 main 返回的退出代码退出进程 我还听说 C 标
  • 为什么 Windows 只允许一个应用程序访问网络摄像头? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我一直在尝试用 C 制作一个示例网络摄像头应用程序 我发现该应用程序无法同时运行 Skype 或 Oovoo 或任何其他应用程序运行 反之亦然 为什么
  • 将.exe文件嵌入到C++程序中?

    我编写了一个 C 程序 我想在其中执行第二个程序 这是一个 exe 文件 问题是我想将我的程序作为一个文件共享给其他人 当我在互联网上搜索时 我找到了这个解决方案 只需将第二个 exe 文件作为二进制资源存储在主文件中 exe 在编译时使用
  • 使用脚本清除 Internet Explorer 6.0 浏览历史记录

    我使用以下脚本删除 IE 7 0 中的浏览历史记录 RunDll32 exe InetCpl cpl ClearMyTracksByProcess 255 但现在我需要一个脚本来清除 IE 6 0 中的浏览历史记录 我收到一条错误消息 缺少
  • 作为 Windows 服务运行时,Tomcat 7 控制台和/或托盘图标不显示

    我已将 Tomcat7 安装为服务 service bat 它作为服务启动并运行良好 但当您使用 Tomcat7 exe 或startup bat 手动启动服务器时 我看不到通常出现的控制台 顺便说一句 我在 Windows 7 上 我从这
  • 避免 Inno Setup 中的“无法展开 shell 文件夹常量 userdocs”错误

    我将一些示例文档安装到 Windows 上标准 我的文档 文件夹的 PerfectTablePlan 子文件夹中 这对于 99 以上的用户来说效果很好 但是 如果用户没有 我的文档 文件夹 我会收到许多以下形式的丑陋错误消息 内部错误 无法
  • 在 Windows 上将 Mercurial (hg) 存储库转换为 Git (7)

    我现在真的很沮丧 我有一个现有的 hg 存储库 其中有几个月的编码历史 我想将其放入私有 Github 存储库中 以便我可以从那里对其进行处理 不幸的是我使用的是 Windows 我似乎找不到any转换我实际上可以正常工作的存储库的方法 实
  • 导入错误:无法导入名称线程

    这是我第一次学习Python 我继续尝试线程这篇博文 http www saltycrane com blog 2008 09 simplistic python thread example 问题是它似乎已经过时了 import time
  • 如何更改选项卡控件的名称

    我在 C WinForms 应用程序中使用选项卡控件 我想更改选项卡的标题 默认情况下它们是 tabPage1 tabPage2 等 一种无需代码即可实现的懒惰方法 选择选项卡控件 Go to properties use F4 to do
  • 如何从任何进程关闭 Windows 上的套接字(ipv4 和 ipv6)连接?

    如何在 Windows 上关闭 tcp v4 和 tcp v6 连接 我不想终止具有开放连接的整个进程 因为这显然会将其他人踢出该进程 我需要从一个单独的进程执行此操作 因此无法访问套接字句柄等 我正在使用 Windows API 来获取
  • 以编程方式最小化/恢复窗口,跳过动画效果

    我需要对窗口列表执行多项操作 最小化其中一些 恢复其他 以便立即在两组或多组窗口之间切换 这样做的问题是最小化和恢复窗口时可以看到的动画 整个过程看起来很糟糕 所有这些动画都进进出出 上下移动 但是 我无法禁用这些动画 因为这是针对其他计算
  • 更改desktop.ini不会在Windows中自动更新文件夹图标

    我使用此批处理脚本将所有文件夹和子文件夹的图标更改为位于文件夹中的 ico 文件 但是 资源管理器中的文件夹图标不会改变除非我手动重命名desktop ini将资源管理器中的文件更改为其他内容 然后返回desktop ini或者例如将字母更
  • python+win32:检测窗口拖动

    有没有办法检测何时使用 python pywin32 在窗口中拖动不属于我的应用程序的窗口 我想对其进行设置 以便当我拖动标题与桌面边缘附近的图案匹配的窗口时 当松开鼠标时它会捕捉到边缘 我可以编写代码 以便在释放鼠标时将所有具有该标题的窗
  • 如何解决内存碎片

    我们偶尔会遇到这样的问题 长时间运行的服务器进程 在 Windows Server 2003 上运行 由于内存分配失败而引发异常 我们怀疑这些分配由于内存碎片而失败 因此 我们一直在寻找一些可能对我们有帮助的替代内存分配机制 我希望有人能告

随机推荐