0

当我编译我的项目时,我得到了这个错误。

C:\src\libs\nvrtpaudio\FileRtpSource.
cpp(61) : error C3861: 'timeBeginPeriod': identifier not found
C:\src\libs\nvrtpaudio\FileRtpSource.
cpp(71) : error C3861: 'timeEndPeriod': identifier not found
gmake[5]: *** [_out/win7_x86_debug/FileRtpSource.obj] Error 2

我包括 windows.h 但此错误仍然存​​在。有谁知道如何解决这个问题?

4

1 回答 1

8

MSDN

头文件:Mmsystem.h(包括 Windows.h)

因此,您应该包含“windows.h”并且没问题,但是 MSDN 没有说的是这假设您没有WIN32_LEAN_AND_MEAN定义,当定义时,从模板创建的项目也是如此 -排除您需要的“mmsystem.h”。

所以你必须确保你WIN32_LEAN_AND_MEAN的项目中没有,或者直接包括:

#include "stdafx.h"
#include <mmsystem.h> // <<--- Here we go

#pragma comment(lib, "winmm.lib")

int _tmain(int argc, _TCHAR* argv[])
{
    timeBeginPeriod(0);
    return 0;
}
于 2013-08-06T21:13:25.820 回答