1. /// @file main.cpp
  2. /// @brief 不包含SDK头文件, 补全API定义
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif /* __cplusplus */
  6. #define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__* name
  7. DECLARE_HANDLE(HWND);
  8. DECLARE_HANDLE(HINSTANCE);
  9. #define WINAPI __stdcall
  10. typedef char* LPSTR;
  11. typedef const char* LPCSTR;
  12. typedef unsigned int UINT;
  13. #define NULL 0
  14. #define MB_OK 0
  15. /// MessageBoxA 是CRT函数
  16. __declspec(dllimport)
  17. int
  18. WINAPI
  19. MessageBoxA(
  20. HWND hWnd ,
  21. LPCSTR lpText,
  22. LPCSTR lpCaption,
  23. UINT uType);
  24. #define MessageBox MessageBoxA
  25. #ifdef __cplusplus
  26. }
  27. #endif  /* __cplusplus */
  28. int WINAPI WinMain(HINSTANCE hInstance,
  29. HINSTANCE hPrevInstance,
  30. LPSTR     lpCmdLine,
  31. int       nCmdShow) {
  32. MessageBox(NULL, "test", "main", MB_OK);
  33. return 0;
  34. }

http://blog.csdn.net/lostspeed/article/details/50590304

不包含SDK头文件, 补全API定义的更多相关文章

  1. cocos2dx中使用声音引擎需要包含的头文件

    1.需要包含的头文件和命名空间 #include "SimpleAudioEngine.h"using namespace CocosDenshion;

  2. [C++] C语言及C++语言中包含的头文件名称,及作用

    头文件主目录include 头文件目录中总共有32个.h头文件.其中主目录下有13个,asm子目录中有4个,linux子目录中有10个,sys子目录中有5个.这些头文件各自的功能如下,具体的作用和所包 ...

  3. linux编译模块,包含了头文件却还是报undifind警告

    在编写一个自己写的gadget驱动的时候遇到一个这样的问题,编译的时候报了个警告:WARNING: "usb_composite_register" [-/my_zero.ko] ...

  4. [C/C++]在头文件中使用static定义变量意味着什么

    文章出处:http://www.cnblogs.com/zplutor/ 看到有一位同学在头文件中这么写: static const wchar_t* g_str1 = - static const ...

  5. 通过词法分析实现的指出C程序中包含的头文件

    在阅读有些程序的源码时,很希望能够马上弄清楚源码中到底包含了哪些头文件,以确定是否需要为了特殊的函数而手动加入#include.借助flex的词法分析实现了这一功能,本质上就是对正则表达式的匹配.注意 ...

  6. QT5中无法包含Qtgui头文件的问题。

    今天新学QT是,从一个ppt中边看边抄边学.前几页还能理解,但到了用纯源码写空白QT工程时,便遇到了一个问题.头文件里包含 #include  <QtGui> 但是编译时总是出现下面图一中 ...

  7. 头文件里声明和定义,Qt编译不过问题

    1.现象1 Qt5.2.1,新建头文件,声明一个类,然后在此头文件中实现类的static变量和方法,但是编译不过,显示:multiple definition of `xxx'. 2.现象2 在高版本 ...

  8. 文件类型分类:头文件dirent.h中定义的文件类型与linux内文件符号对应关系

    头文件 dirent.h 定义了文件类型: enum{    DT_UNKNOWN = 0,         //未知类型    DT_FIFO = 1,            //first in, ...

  9. Ceph RGW服务 使用s3 java sdk 分片文件上传API 报‘SignatureDoesNotMatch’ 异常的定位及规避方案

    import java.io.File;   import com.amazonaws.AmazonClientException; import com.amazonaws.auth.profile ...

随机推荐

  1. PHP+Apache+Mysql 配置流程【配置之后才能正常使用】

    你需要的软件: 1.服务器:apache_2.2.4-win32-x86-no_ssl.msi http://pan.baidu.com/share/link?shareid=3837123167&a ...

  2. C++ Primer 学习笔记_87_用于大型程序的工具 --异常处理

    用于大型程序的工具 --异常处理 引言: C++语言包括的一些特征在问题比較复杂,非个人所能管理时最为实用.如:异常处理.命名空间和多重继承. 相对于小的程序猿团队所能开发的系统需求而言,大规模编程[ ...

  3. Jquery Ajax时 error处理 之 parsererror

    Jquery Ajax时 error处理 之 parsererror     01 $.ajax({ 02         type: "POST", 03         con ...

  4. Javascript-one

    今天,学习Javascript第一天,学习了一些基本的概念,下面就对今天所学的知识进行一个整理,回顾吧! 首先,将Javascript代码包含在(X)html文档中,主要的方法是使用<scrip ...

  5. Java -- sleep and wait

    1.二者的来源 sleep(),是Thread下面的静态方法/静态本地方法. wait(),是Object()的final方法. 2.源码分析 a.sleep() public static void ...

  6. 凡客副总裁崔晓琦离职 曾负责旗下V+商城项目_科技_腾讯网

    凡客副总裁崔晓琦离职 曾负责旗下V+商城项目_科技_腾讯网 凡客副总裁崔晓琦离职 曾负责旗下V+商城项目 腾讯科技[微博]乐天2013年09月18日12:44 分享 微博 空间 微信 新浪微博 邮箱 ...

  7. MySQL具体解释(5)-----------函数超全总结

    mysql函数大全   对于针对字符串位置的操作.第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值. 假设str是空字符串,返回0.假设str是NULL,返 ...

  8. 下载并在Eclipse中关联Android源代码

    大家都知道文档写的好当然让人非常舒服,可是有时候文档再好也不如直接看源代码来的直接,既然Android是开源的,为什么不在eclipse里直接看它的源代码呢? 1.下载源代码 这部分网上有大量的资料, ...

  9. AES SHA-1 SM3 MD5

    AES是美国国家标准技术研究所NIST旨在代替DES的21世纪的加密标准. 输入:128bit 的消息分组 输出:128bit 的密文分组 密钥长度及圈数 128 10 192 12 256 14 消 ...

  10. UVALive 3989 Ladies&#39; Choice

    经典的稳定婚姻匹配问题 UVALive - 3989 Ladies' Choice Time Limit: 6000MS Memory Limit: Unknown 64bit IO Format:  ...