c++ - 如何找出运行 vista/w7 的机器的当前颜色深度?

标签 c++ windows colors settings

我想检查操作系统的当前颜色深度,以便在用户尝试使用“错误”颜色深度(使用 C++ 和 Qt)运行我的应用程序时警告用户。

我想有一个 win api 调用可以获取此信息,但我找不到任何东西。

最佳答案

在 Windows 上,您可以将 GetDeviceCapsBITSPIXEL 标志一起使用,但您首先需要一个屏幕 DC(GetDC 可以为您获取一个) .

HDC dc = GetDC(NULL);
int bitsPerPixel = GetDeviceCaps(dc, BITSPIXEL);
ReleaseDC(NULL, dc);

关于c++ - 如何找出运行 vista/w7 的机器的当前颜色深度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1276687/

相关文章:

c++ - 如何使用 Clang 指定 C++17 中 utf-16 字符串文字的字节序?

c++ - 当我想在本地存储来自应用程序的数据并且没有外部依赖时,我有哪些选择?

python - 在 Windows 上使用 Shutil.copyfile() 时出现 IOError

perl - 如何设置 Gtk2::Button 的文本颜色?

c++ - 将最小可能的 float 添加到 float

c++ - 为什么我的 C++ 程序的汇编输出充满了没有汇编代码的 .ascii?

windows - 内存分析——VAD标签和代码注入(inject)

python - 在 Windows : how to run a Python script from a virtualenv 上相当于 "source"的批处理

jQuery 颜色插件 HSL 模型

ruby-on-rails - 如何在Multitail中为Rails日志着色?