2011-02-15 77 views
1

好吧我是使用VS的新手。我試圖找出OpenGl程序(C語言)更新之間的時間間隔,並計劃使用timeGetTime()。在Visual Studio 2008 Professional中使用timeGetTime()時遇到問題

#include <windows.h> 

在我的程序的頂部。在「項目>屬性>鏈接器>輸入」下,我有「附加依賴項」,包括「winmm.lib」。現在,每當我嘗試使用timeGetTime(),它給了我兩個錯誤:

Error 63 error LNK2019: unresolved external symbol _timeGetTime referenced in function _main ***.obj 

Error 64 fatal error LNK1120: 1 unresolved externals C:\*** 

如何解決此得到什麼?

回答

4

請確保您沒有WIN32_LEAN_AND_MEANMMNOTIMER宏定義,或者timeGetTime()的原型將不會包含在mmsystem.h中。

另一種可能性是您在其中一個頭文件(或.c源文件)中出現timeGetTime()的其他聲明,因爲某些原因而不是mmsystem.h中的聲明。

符號應該被鏈接器尋找的是:

[email protected] (or __imp_timeGetTime on x64) 

_timeGetTime 
+0

這是我的另一頭文件我VE包括: 的#include 的#include 的#include 的#include 我不知道他們中的任何人是否聲明timeGetTime(除了包含mmsystem.h的windows.h)。我不知道如何使用宏,我怎麼能檢查是否定義了WIN32_LEAN_AND_MEAN? – Jeff 2011-02-15 02:29:28

0

如果您正在嘗試執行計時,我建議您使用QueryPerformanceFrequencyQueryPerformanceCounter而不是timeGetTime。這些工作通過在Windows中使用高性能計數器來實現,這將爲您提供更好的計時精度。

+0

我會看看這個,感謝您的答覆 – Jeff 2011-02-15 12:40:40

相關問題