Проблема с использованием timeGetTime () в Visual Studio 2008 Professional - PullRequest
1 голос
/ 15 февраля 2011

Хорошо, я довольно новичок в использовании VS. Я пытаюсь выяснить, сколько времени прошло между обновлениями в программе OpenGl (в C), и я планировал использовать timeGetTime ().

У меня есть

#include <windows.h>

вверху моей программы. Также в «Project> Properties> Linker> Input» у меня есть «Дополнительные зависимости», включая «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:\***  

Как мне обойти это?

Ответы [ 2 ]

4 голосов
/ 15 февраля 2011

Убедитесь, что у вас не определены макросы WIN32_LEAN_AND_MEAN или MMNOTIMER, иначе прототип для timeGetTime() не будет включен в mmsystem.h.

Другая возможность состоит в том, что у вас есть какое-то другое объявление для timeGetTime() в одном из ваших заголовков (или в исходном файле .c), которое по какой-то причине выбирается вместо объявления в mmsystem.h.

Символ, который должен искать компоновщик:

__imp__timeGetTime@0 (or __imp_timeGetTime on x64)

не

_timeGetTime
0 голосов
/ 15 февраля 2011

Если вы пытаетесь настроить время, я бы рекомендовал использовать QueryPerformanceFrequency и QueryPerformanceCounter вместо timeGetTime. Они работают с использованием высокопроизводительных счетчиков в Windows, что значительно повысит точность измерений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...