使用API函数的问题,急救……!(在线等,请大家帮忙)! 使用一个API函数,怎么知道它在哪个头文件里,使用哪个.LIB连接???使用MFC的stdafx.h文件时,是不是就可以使用所有的API函数了? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 查MSDN。一般在相应提示的下面都有头文件的信息 可以查msdnstdafx.h只是预编译头文件,并不包含所有头文件... stdafx.h是用以生成预编译文件的。一般里面会有include "windows.h",windows.h中又包含了大多数用到的.h,常用的api都在这儿声明了。至于在哪个dll中哪个.lib中,MSDN中都有详细描述。 同意楼上的回答在msdn上可以查到 msdn可以解决大部分.其它的我也想知道,比如一些还没有公开的api,怎么办? 没公开的API当然是没办法查到资料的喽,只有看别人研究的材料了。官方肯定没有资料给你的 没公开的你必须知道它是在哪个模块中,比如在Shell32.dll中有一个隐藏的API函数SHFormatDrive,用于软盘的格式化。你在使用的时候就必须动态地加载DLL并手工得到该函数的指针,方法同调用普通的DLL函数一样,下面是拷的一段例子://说明原型typedef DWORD WINAPI SH_FORMATDRIVE( HWND hwnd,UINT drive,UINT fmtID,UINT options);SH_FORMATDRIVE *dl_SHFormatDrive;//加载DLLHINSTANCE 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);}//释放DLLFreeLibrary(hShell);}也就是说对于没公开的API你必须通过一定的途径得到它的原型所在的模块等信息。网上有很多关于未公开的API的资料。MSDN上是查不到的。另,如上面一样显式调用DLL中的函数是不需要头文件的。 楼上的兄弟是高手啊!我安装的MSDN是两张盘的……该怎么使用? …… 哪位朋友能详细的介绍一下CSDN? msdn里面,每个函数的介绍下面都会有的 tianxiawushuang002:装了第一张会自动提示装第二张, 一般msdn都会隐藏一些函数,但是后面的版本就有可能公开,比如说窗体半透明的函数在msdn2002里就没有公开,但是在2003就公开了,微软真的很能赚钱~不过这也怪不得微软啊~嘿嘿 project->set->link 文件名 m_list.DeleteItem(0)为什么不管用呀? 多线程访问模板类变量问题 IE工具条自定义按钮调用ActiveX 讨论ATL组件升级的问题 局域网内时间的同步? 谁能给我个输入法源代码, 有谁知道MPEG-4的文件格式,因为要做一个加密MPEG-4的东东,要求只加密数据区(以便可以用播放器打开)。 在线求助——关于设置文本的字体颜色! 在DAO中,用SQL查找一个与时间有关的记录,怎么做?(管理员同志,不要删我好吗) 拖放问题,高手请进(第二次提同样的问题) delete 的错误,大家help阿!! 怎样最简单地把GetLastError()的结果显示出来?
一般在相应提示的下面都有头文件的信息
stdafx.h只是预编译头文件,并不包含所有头文件...
至于在哪个dll中哪个.lib中,MSDN中都有详细描述。
在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中的函数是不需要头文件的。
装了第一张会自动提示装第二张,
嘿嘿