有没有办法从 Windows API 调用中获取更详细的错误报告

Is there any way to get more detailed error reports from a windows API call?

本文关键字:报告 错误 获取 Windows 调用 API 有没有      更新时间:2023-10-16

我正在开发一个相当大的程序,该程序调用ChangeDisplaySettingsEx以更改显示器的布局/分辨率。

我一直遇到这些问题,这些调用有时有效,有时无效,我无法确定导致失败的原因。

每当它失败时,我都会得到一个返回代码 -1,它对应于 DISP_CHANGE_FAILED这显然不是很具有描述性。

我想知道是否有更好的方法来调试调用结果,以便我可以知道导致它失败的原因?

"我想知道是否有更好的方法来调试调用结果,以便我可以知道导致它失败的原因?"

您可以尝试事先查询实际显示功能,如参考文档中的建议:

言论

"若要确保传递给 ChangeDisplaySettingsEx 的 DEVMODE 结构有效,并且仅包含显示驱动程序支持的值,请使用 EnumDisplaySettings 函数返回的 DEVMODE。

执行此操作后,您可以将返回的DEVMODE与您尝试作为设置传递的内容进行比较。