public void testZeroFiletime() {
try {
CDLL dll = CDLL.LoadLibrary("kernel32.dll");
FILETIME ft = new FILETIME();
ft.dwLowDateTime.setValue((int) 0);
ft.dwHighDateTime.setValue((int) 0);
CFunction fileTimeToSystemTime = dll.loadFunction("FileTimeToSystemTime");
CFunction getFileTimeAsSystemTime = dll.loadFunction("SystemTimeToFileTime");
SYSTEMTIME st = new SYSTEMTIME();
Object[] ary1 = { ft, st };
//Sat, 30 September 2000 14:46:43
Object o = fileTimeToSystemTime.call(CInt.class, ary1,
CFunction.FUNCFLAG_STDCALL);
assertEquals(1601, st.wYear.getValue());
assertEquals(1, st.wMonth.getValue());
assertEquals(1, st.wDay.getValue());
assertEquals(0, st.wHour.getValue());
assertEquals(0, st.wMinute.getValue());
assertEquals(0, st.wSecond.getValue());
assertEquals(0, st.wMilliseconds.getValue());
FILETIME zeroFileTime = new FILETIME();
Object[] a = { st, zeroFileTime };
Object o1 = getFileTimeAsSystemTime.call(CInt.class, ary1,
CFunction.FUNCFLAG_STDCALL);
assertEquals(0, zeroFileTime.dwHighDateTime.getValue());