I威尔KOU 2013-10-06 09:00 采纳率: 0%
浏览 978

CreateDC 编译检查出错

环境:Eclipse + CDT + Mingw
欲做一个截图程序,但是
CreateDC("DISPLAY", NULL, NULL, NULL);
Eclipse在这一行编译检查即报错: Invalid arguments ' Candidates are: ? CreateDCA(?, ?, ?, const _devicemodeA ) '
还没等到编译呢,开发环境在这一行就给显示个叉。
函数原型为:WINGDIAPI HDC WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA
);
(LPCSTR 就是 const char* 的 typedef)
百思不得其解,Google和百度都不好使,搜不到,好呆人家的错误都在编译链接上,我这还没链呢就不行了。。望大神能指条明路。

  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-25 17:52
    关注

    该回答引用ChatGPT

    根据错误提示,CreateDC函数期望的参数类型不正确,正确的参数类型应该是LPCSTR类型,但是您传递了一个NULL。同时,您使用的是CreateDC函数,但是函数原型指定的是CreateDCA函数,这两个函数有些不同。CreateDC函数是一个宏,它可以根据不同的参数类型来选择使用不同的CreateDCA函数。


    以下是一些可能的解决方案:

    • 尝试将NULL参数替换为有效的参数,例如"DISPLAY"字符串。
    • 使用CreateDCA函数而不是CreateDC宏,并将所有参数都传递给它。例如:
      CreateDCA("DISPLAY", NULL, NULL, NULL);
      

    确认您是否包含了正确的头文件。CreateDC函数通常在windows.h头文件中声明,而CreateDCA函数通常在wingdi.h头文件中声明。请检查您是否包含了正确的头文件,并确保它们在正确的位置。

    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站