使用一个API函数,怎么知道它在哪个头文件里,使用哪个.LIB连接???使用MFC的stdafx.h文件时,是不是就可以使用所有的API函数了?

解决方案 »

  1.   

    查MSDN。
    一般在相应提示的下面都有头文件的信息
      

  2.   

    可以查msdn
    stdafx.h只是预编译头文件,并不包含所有头文件...
      

  3.   

    stdafx.h是用以生成预编译文件的。一般里面会有include "windows.h",windows.h中又包含了大多数用到的.h,常用的api都在这儿声明了。
    至于在哪个dll中哪个.lib中,MSDN中都有详细描述。
      

  4.   

    同意楼上的回答在msdn上可以查到
      

  5.   

    msdn可以解决大部分.其它的我也想知道,比如一些还没有公开的api,怎么办?
      

  6.   

    没公开的API当然是没办法查到资料的喽,只有看别人研究的材料了。官方肯定没有资料给你的
      

  7.   

    没公开的你必须知道它是在哪个模块中,比如
    在Shell32.dll中有一个隐藏的API函数SHFormatDrive,用于软盘的格式化。
    你在使用的时候就必须动态地加载DLL并手工得到该函数的指针,方法同调用
    普通的DLL函数一样,下面是拷的一段例子:
    //说明原型
    typedef DWORD WINAPI SH_FORMATDRIVE( HWND hwnd,
    UINT drive,
    UINT fmtID,
    UINT options);SH_FORMATDRIVE *dl_SHFormatDrive;
    //加载DLL
    HINSTANCE hShell = LoadLibrary("shell32.dll");
    if(hShell != NULL) // If the method is found in the shell32.dll library
    {
    //获取函数脂针。
    dl_SHFormatDrive = (SH_FORMATDRIVE *)(GetProcAddress(hShell,"SHFormatDrive"));
    if(dl_SHFormatDrive != NULL)
    {
    //调用
    dl_SHFormatDrive(NULL,0,SHFMT_ID_DEFAULT,SHFMT_OPT_FULL);
    }
    //释放DLL
    FreeLibrary(hShell);
    }也就是说对于没公开的API你必须通过一定的途径得到它的原型
    所在的模块等信息。网上有很多关于未公开的API的资料。MSDN上是查不到的。
    另,如上面一样显式调用DLL中的函数是不需要头文件的。
      

  8.   

    楼上的兄弟是高手啊!我安装的MSDN是两张盘的……该怎么使用?
      

  9.   

    …… 哪位朋友能详细的介绍一下CSDN?
      

  10.   

    msdn里面,每个函数的介绍下面都会有的
      

  11.   

    tianxiawushuang002:
    装了第一张会自动提示装第二张,
      

  12.   

    一般msdn都会隐藏一些函数,但是后面的版本就有可能公开,比如说窗体半透明的函数在msdn2002里就没有公开,但是在2003就公开了,微软真的很能赚钱~不过这也怪不得微软啊~
    嘿嘿
      

  13.   

    project->set->link  文件名