Fijate en el tipo LARGE_INTEGER:
Código:
typedef union _LARGE_INTEGER {
struct {
DWORD LowPart;
LONG HighPart;
};
LONGLONG QuadPart;
} LARGE_INTEGER;
Visto esto tienes dos opciones:
Opción 1:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
LARGE_INTEGER freq;
LARGE_INTEGER startTime, endTime;
LARGE_INTEGER elapsedTime, elapsedMilliseconds;
QueryPerformanceFrequency(&freq);
QueryPerformanceCounter(&startTime);
// run code here
QueryPerformanceCounter(&endTime);
elapsedTime.QuadPart = endTime.QuadPart - startTime.QuadPart;
elapsedMilliseconds.QuadPart = (1000 * elapsedTime.QuadPart) / freq.QuadPart;
}
Opción 2, quizás mas clara:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
LONGLONG freq;
LONGLONG startTime, endTime;
LONGLONG elapsedTime, elapsedMilliseconds;
QueryPerformanceFrequency((LARGE_INTEGER*)&freq);
QueryPerformanceCounter((LARGE_INTEGER*)&startTime);
// run code here
QueryPerformanceCounter((LARGE_INTEGER*)&endTime);
elapsedTime = endTime - startTime;
elapsedMilliseconds = (1000 * elapsedTime) / freq;;
}
Saludos.