相信有很多朋友想利用timeGetTime()实现延时操作,通常实现方法如下:
但在编译时出现下面错误,不知为什么,我也曾经出现过这种问题,但通过自己的努力已经解决了,下面给出解决方法,希望能对大家有所帮助.
但在编译时出现下面错误,不知为什么,我也曾经出现过这种问题,但通过自己的努力已经解决了,下面给出解决方法,希望能对大家有所帮助.
void CDib::Delay(DWORD dwDelayTime)
{
DWORD dwTimeBegin,dwTimeEnd;
dwTimeBegin = timeGetTime();
do
{
dwTimeEnd = timeGetTime();
}while(dwTimeEnd - dwTimeBegin <dwDelayTime);
}
出错信息:
Dib.obj : error LNK2001: unresolved external symbol __imp__timeGetTime@0
Debug/***.exe : fatal error LNK1120: 1 unresolved externals
有很多书上也有这个例子,并且书上的可以运行,自己做就不行了.
解决方法:
1.首先不要慌,要冷静下来,查MSDN;
2.MSDN上介绍了timeGetTime()需要的东西:
Requirements
Windows NT/2000: Requires Windows NT 3.1 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Mmsystem.h.
Library: Use Winmm.lib.
3.看是不是头文件的问题,添加头文件#include "Mmsystem.h"后,还是不行;
4.那么看看是不是库的问题,添加库Winmm.lib后行了;
5.顺利解决!