mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-18 16:08:05 +00:00
kernel32: Move file time functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0f5538b9e3
commit
2c68c530af
|
@ -238,7 +238,7 @@
|
|||
@ stdcall CommConfigDialogA(str long ptr)
|
||||
@ stdcall CommConfigDialogW(wstr long ptr)
|
||||
# @ stub CompareCalendarDates
|
||||
@ stdcall CompareFileTime(ptr ptr)
|
||||
@ stdcall -import CompareFileTime(ptr ptr)
|
||||
@ stdcall CompareStringA(long long str long str long)
|
||||
@ stdcall CompareStringW(long long wstr long wstr long)
|
||||
@ stdcall CompareStringEx(wstr long wstr long wstr long ptr ptr long)
|
||||
|
@ -465,8 +465,8 @@
|
|||
@ stdcall -import FatalAppExitW(long wstr)
|
||||
@ stdcall FatalExit(long)
|
||||
@ stdcall FileTimeToDosDateTime(ptr ptr ptr)
|
||||
@ stdcall FileTimeToLocalFileTime(ptr ptr)
|
||||
@ stdcall FileTimeToSystemTime(ptr ptr)
|
||||
@ stdcall -import FileTimeToLocalFileTime(ptr ptr)
|
||||
@ stdcall -import FileTimeToSystemTime(ptr ptr)
|
||||
@ stdcall -import FillConsoleOutputAttribute(long long long long ptr)
|
||||
@ stdcall -import FillConsoleOutputCharacterA(long long long long ptr)
|
||||
@ stdcall -import FillConsoleOutputCharacterW(long long long long ptr)
|
||||
|
@ -702,7 +702,7 @@
|
|||
@ stdcall -import GetLargestConsoleWindowSize(long)
|
||||
@ stdcall -import GetLastError()
|
||||
@ stub GetLinguistLangSize
|
||||
@ stdcall GetLocalTime(ptr)
|
||||
@ stdcall -import GetLocalTime(ptr)
|
||||
@ stdcall GetLocaleInfoA(long long ptr long)
|
||||
@ stdcall GetLocaleInfoW(long long ptr long)
|
||||
@ stdcall GetLocaleInfoEx(wstr long ptr long)
|
||||
|
@ -830,10 +830,10 @@
|
|||
@ stdcall GetSystemPowerStatus(ptr)
|
||||
@ stdcall GetSystemPreferredUILanguages(long ptr ptr ptr)
|
||||
@ stdcall GetSystemRegistryQuota(ptr ptr)
|
||||
@ stdcall GetSystemTime(ptr)
|
||||
@ stdcall -import GetSystemTime(ptr)
|
||||
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr)
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr) ntdll.NtQuerySystemTime
|
||||
@ stdcall GetSystemTimePreciseAsFileTime(ptr)
|
||||
@ stdcall -import GetSystemTimeAsFileTime(ptr)
|
||||
@ stdcall -import GetSystemTimePreciseAsFileTime(ptr)
|
||||
@ stdcall GetSystemTimes(ptr ptr ptr)
|
||||
@ stdcall -import GetSystemWindowsDirectoryA(ptr long)
|
||||
@ stdcall -import GetSystemWindowsDirectoryW(ptr long)
|
||||
|
@ -1052,7 +1052,7 @@
|
|||
# @ stub LoadStringBaseW
|
||||
@ stdcall -import LocalAlloc(long long)
|
||||
@ stdcall LocalCompact(long)
|
||||
@ stdcall LocalFileTimeToFileTime(ptr ptr)
|
||||
@ stdcall -import LocalFileTimeToFileTime(ptr ptr)
|
||||
@ stdcall LocalFlags(long)
|
||||
@ stdcall -import LocalFree(long)
|
||||
@ stdcall LocalHandle(ptr)
|
||||
|
@ -1177,7 +1177,7 @@
|
|||
# @ stub QueryThreadProfiling
|
||||
# @ stub QueryThreadpoolStackInformation
|
||||
@ stdcall -arch=x86_64 QueryUmsThreadInformation(ptr long ptr long ptr)
|
||||
@ stdcall QueryUnbiasedInterruptTime(ptr)
|
||||
@ stdcall -import QueryUnbiasedInterruptTime(ptr)
|
||||
@ stub QueryWin31IniFilesMappedToRegistry
|
||||
@ stdcall -import QueueUserAPC(ptr long long)
|
||||
@ stdcall -import QueueUserWorkItem(ptr ptr long)
|
||||
|
@ -1417,7 +1417,7 @@
|
|||
@ stdcall SetLastError(long) RtlSetLastWin32Error
|
||||
# @ stub SetLocalPrimaryComputerNameA
|
||||
# @ stub SetLocalPrimaryComputerNameW
|
||||
@ stdcall SetLocalTime(ptr)
|
||||
@ stdcall -import SetLocalTime(ptr)
|
||||
@ stdcall SetLocaleInfoA(long long str)
|
||||
@ stdcall SetLocaleInfoW(long long wstr)
|
||||
@ stdcall SetMailslotInfo(long long)
|
||||
|
@ -1440,7 +1440,7 @@
|
|||
@ stdcall -import SetStdHandleEx(long long ptr)
|
||||
@ stdcall SetSystemFileCacheSize(long long long)
|
||||
@ stdcall SetSystemPowerState(long long)
|
||||
@ stdcall SetSystemTime(ptr)
|
||||
@ stdcall -import SetSystemTime(ptr)
|
||||
@ stdcall SetSystemTimeAdjustment(long long)
|
||||
@ stdcall SetTapeParameters(ptr long ptr)
|
||||
@ stdcall SetTapePosition(ptr long long long long long)
|
||||
|
@ -1492,7 +1492,7 @@
|
|||
@ stdcall -import SuspendThread(long)
|
||||
@ stdcall -import SwitchToFiber(ptr)
|
||||
@ stdcall -import SwitchToThread()
|
||||
@ stdcall SystemTimeToFileTime(ptr ptr)
|
||||
@ stdcall -import SystemTimeToFileTime(ptr ptr)
|
||||
@ stdcall SystemTimeToTzSpecificLocalTime (ptr ptr ptr)
|
||||
# @ stub SystemTimeToTzSpecificLocalTimeEx
|
||||
@ stdcall TerminateJobObject(long long)
|
||||
|
|
|
@ -514,38 +514,6 @@ static BOOL TIME_GetSpecificTimeZoneInfo( const WCHAR *key_name, WORD year,
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* SetLocalTime (KERNEL32.@)
|
||||
*
|
||||
* Set the local time using current time zone and daylight
|
||||
* savings settings.
|
||||
*
|
||||
* PARAMS
|
||||
* systime [in] The desired local time.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE. The time was set.
|
||||
* Failure: FALSE, if the time was invalid or caller does not have
|
||||
* permission to change the time.
|
||||
*/
|
||||
BOOL WINAPI SetLocalTime( const SYSTEMTIME *systime )
|
||||
{
|
||||
FILETIME ft;
|
||||
LARGE_INTEGER st, st2;
|
||||
NTSTATUS status;
|
||||
|
||||
if( !SystemTimeToFileTime( systime, &ft ))
|
||||
return FALSE;
|
||||
st.u.LowPart = ft.dwLowDateTime;
|
||||
st.u.HighPart = ft.dwHighDateTime;
|
||||
RtlLocalTimeToSystemTime( &st, &st2 );
|
||||
|
||||
if ((status = NtSetSystemTime(&st2, NULL)))
|
||||
SetLastError( RtlNtStatusToDosError(status) );
|
||||
return !status;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetSystemTimeAdjustment (KERNEL32.@)
|
||||
*
|
||||
|
@ -573,34 +541,6 @@ BOOL WINAPI GetSystemTimeAdjustment( PDWORD lpTimeAdjustment, PDWORD lpTimeIncre
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* SetSystemTime (KERNEL32.@)
|
||||
*
|
||||
* Set the system time in utc.
|
||||
*
|
||||
* PARAMS
|
||||
* systime [in] The desired system time.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE. The time was set.
|
||||
* Failure: FALSE, if the time was invalid or caller does not have
|
||||
* permission to change the time.
|
||||
*/
|
||||
BOOL WINAPI SetSystemTime( const SYSTEMTIME *systime )
|
||||
{
|
||||
FILETIME ft;
|
||||
LARGE_INTEGER t;
|
||||
NTSTATUS status;
|
||||
|
||||
if( !SystemTimeToFileTime( systime, &ft ))
|
||||
return FALSE;
|
||||
t.u.LowPart = ft.dwLowDateTime;
|
||||
t.u.HighPart = ft.dwHighDateTime;
|
||||
if ((status = NtSetSystemTime(&t, NULL)))
|
||||
SetLastError( RtlNtStatusToDosError(status) );
|
||||
return !status;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* SetSystemTimeAdjustment (KERNEL32.@)
|
||||
*
|
||||
|
@ -784,27 +724,6 @@ BOOL WINAPI TzSpecificLocalTimeToSystemTime(
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetSystemTimePreciseAsFileTime (KERNEL32.@)
|
||||
*
|
||||
* Get the current time in utc format with greater accuracy.
|
||||
*
|
||||
* PARAMS
|
||||
* time [out] Destination for the current utc time
|
||||
*
|
||||
* RETURNS
|
||||
* Nothing.
|
||||
*/
|
||||
void WINAPI GetSystemTimePreciseAsFileTime( FILETIME *time )
|
||||
{
|
||||
LARGE_INTEGER t;
|
||||
|
||||
t.QuadPart = RtlGetSystemTimePrecise();
|
||||
time->dwLowDateTime = t.u.LowPart;
|
||||
time->dwHighDateTime = t.u.HighPart;
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* TIME_ClockTimeToFileTime (olorin@fandra.org, 20-Sep-1998)
|
||||
*
|
||||
|
@ -1170,167 +1089,6 @@ int WINAPI SetCalendarInfoW(LCID Locale, CALID Calendar, CALTYPE CalType, LPCWST
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* LocalFileTimeToFileTime (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI LocalFileTimeToFileTime( const FILETIME *localft, LPFILETIME utcft )
|
||||
{
|
||||
NTSTATUS status;
|
||||
LARGE_INTEGER local, utc;
|
||||
|
||||
local.u.LowPart = localft->dwLowDateTime;
|
||||
local.u.HighPart = localft->dwHighDateTime;
|
||||
if (!(status = RtlLocalTimeToSystemTime( &local, &utc )))
|
||||
{
|
||||
utcft->dwLowDateTime = utc.u.LowPart;
|
||||
utcft->dwHighDateTime = utc.u.HighPart;
|
||||
}
|
||||
else SetLastError( RtlNtStatusToDosError(status) );
|
||||
|
||||
return !status;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* FileTimeToLocalFileTime (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI FileTimeToLocalFileTime( const FILETIME *utcft, LPFILETIME localft )
|
||||
{
|
||||
NTSTATUS status;
|
||||
LARGE_INTEGER local, utc;
|
||||
|
||||
utc.u.LowPart = utcft->dwLowDateTime;
|
||||
utc.u.HighPart = utcft->dwHighDateTime;
|
||||
if (!(status = RtlSystemTimeToLocalTime( &utc, &local )))
|
||||
{
|
||||
localft->dwLowDateTime = local.u.LowPart;
|
||||
localft->dwHighDateTime = local.u.HighPart;
|
||||
}
|
||||
else SetLastError( RtlNtStatusToDosError(status) );
|
||||
|
||||
return !status;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* FileTimeToSystemTime (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI FileTimeToSystemTime( const FILETIME *ft, LPSYSTEMTIME syst )
|
||||
{
|
||||
TIME_FIELDS tf;
|
||||
LARGE_INTEGER t;
|
||||
|
||||
t.u.LowPart = ft->dwLowDateTime;
|
||||
t.u.HighPart = ft->dwHighDateTime;
|
||||
RtlTimeToTimeFields(&t, &tf);
|
||||
|
||||
syst->wYear = tf.Year;
|
||||
syst->wMonth = tf.Month;
|
||||
syst->wDay = tf.Day;
|
||||
syst->wHour = tf.Hour;
|
||||
syst->wMinute = tf.Minute;
|
||||
syst->wSecond = tf.Second;
|
||||
syst->wMilliseconds = tf.Milliseconds;
|
||||
syst->wDayOfWeek = tf.Weekday;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* SystemTimeToFileTime (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI SystemTimeToFileTime( const SYSTEMTIME *syst, LPFILETIME ft )
|
||||
{
|
||||
TIME_FIELDS tf;
|
||||
LARGE_INTEGER t;
|
||||
|
||||
tf.Year = syst->wYear;
|
||||
tf.Month = syst->wMonth;
|
||||
tf.Day = syst->wDay;
|
||||
tf.Hour = syst->wHour;
|
||||
tf.Minute = syst->wMinute;
|
||||
tf.Second = syst->wSecond;
|
||||
tf.Milliseconds = syst->wMilliseconds;
|
||||
|
||||
if( !RtlTimeFieldsToTime(&tf, &t)) {
|
||||
SetLastError( ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
ft->dwLowDateTime = t.u.LowPart;
|
||||
ft->dwHighDateTime = t.u.HighPart;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* CompareFileTime (KERNEL32.@)
|
||||
*
|
||||
* Compare two FILETIME's to each other.
|
||||
*
|
||||
* PARAMS
|
||||
* x [I] First time
|
||||
* y [I] time to compare to x
|
||||
*
|
||||
* RETURNS
|
||||
* -1, 0, or 1 indicating that x is less than, equal to, or greater
|
||||
* than y respectively.
|
||||
*/
|
||||
INT WINAPI CompareFileTime( const FILETIME *x, const FILETIME *y )
|
||||
{
|
||||
if (!x || !y) return -1;
|
||||
|
||||
if (x->dwHighDateTime > y->dwHighDateTime)
|
||||
return 1;
|
||||
if (x->dwHighDateTime < y->dwHighDateTime)
|
||||
return -1;
|
||||
if (x->dwLowDateTime > y->dwLowDateTime)
|
||||
return 1;
|
||||
if (x->dwLowDateTime < y->dwLowDateTime)
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* GetLocalTime (KERNEL32.@)
|
||||
*
|
||||
* Get the current local time.
|
||||
*
|
||||
* PARAMS
|
||||
* systime [O] Destination for current time.
|
||||
*
|
||||
* RETURNS
|
||||
* Nothing.
|
||||
*/
|
||||
VOID WINAPI GetLocalTime(LPSYSTEMTIME systime)
|
||||
{
|
||||
FILETIME lft;
|
||||
LARGE_INTEGER ft, ft2;
|
||||
|
||||
NtQuerySystemTime(&ft);
|
||||
RtlSystemTimeToLocalTime(&ft, &ft2);
|
||||
lft.dwLowDateTime = ft2.u.LowPart;
|
||||
lft.dwHighDateTime = ft2.u.HighPart;
|
||||
FileTimeToSystemTime(&lft, systime);
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* GetSystemTime (KERNEL32.@)
|
||||
*
|
||||
* Get the current system time.
|
||||
*
|
||||
* PARAMS
|
||||
* systime [O] Destination for current time.
|
||||
*
|
||||
* RETURNS
|
||||
* Nothing.
|
||||
*/
|
||||
VOID WINAPI GetSystemTime(LPSYSTEMTIME systime)
|
||||
{
|
||||
FILETIME ft;
|
||||
LARGE_INTEGER t;
|
||||
|
||||
NtQuerySystemTime(&t);
|
||||
ft.dwLowDateTime = t.u.LowPart;
|
||||
ft.dwHighDateTime = t.u.HighPart;
|
||||
FileTimeToSystemTime(&ft, systime);
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* GetDaylightFlag (KERNEL32.@)
|
||||
*
|
||||
|
@ -1548,17 +1306,6 @@ BOOL WINAPI QueryThreadCycleTime(HANDLE thread, PULONG64 cycle)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* QueryUnbiasedInterruptTime (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI QueryUnbiasedInterruptTime(ULONGLONG *time)
|
||||
{
|
||||
TRACE("(%p)\n", time);
|
||||
if (!time) return FALSE;
|
||||
RtlQueryUnbiasedInterruptTime(time);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* GetTickCount64 (KERNEL32.@)
|
||||
*/
|
||||
|
|
|
@ -2325,6 +2325,156 @@ BOOL WINAPI DECLSPEC_HOTPATCH WriteFileGather( HANDLE file, FILE_SEGMENT_ELEMENT
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* Operations on file times
|
||||
***********************************************************************/
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* CompareFileTime (kernelbase.@)
|
||||
*/
|
||||
INT WINAPI DECLSPEC_HOTPATCH CompareFileTime( const FILETIME *x, const FILETIME *y )
|
||||
{
|
||||
if (!x || !y) return -1;
|
||||
if (x->dwHighDateTime > y->dwHighDateTime) return 1;
|
||||
if (x->dwHighDateTime < y->dwHighDateTime) return -1;
|
||||
if (x->dwLowDateTime > y->dwLowDateTime) return 1;
|
||||
if (x->dwLowDateTime < y->dwLowDateTime) return -1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* FileTimeToLocalFileTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH FileTimeToLocalFileTime( const FILETIME *utc, FILETIME *local )
|
||||
{
|
||||
return set_ntstatus( RtlSystemTimeToLocalTime( (const LARGE_INTEGER *)utc, (LARGE_INTEGER *)local ));
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* FileTimeToSystemTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH FileTimeToSystemTime( const FILETIME *ft, SYSTEMTIME *systime )
|
||||
{
|
||||
TIME_FIELDS tf;
|
||||
|
||||
RtlTimeToTimeFields( (const LARGE_INTEGER *)ft, &tf );
|
||||
systime->wYear = tf.Year;
|
||||
systime->wMonth = tf.Month;
|
||||
systime->wDay = tf.Day;
|
||||
systime->wHour = tf.Hour;
|
||||
systime->wMinute = tf.Minute;
|
||||
systime->wSecond = tf.Second;
|
||||
systime->wMilliseconds = tf.Milliseconds;
|
||||
systime->wDayOfWeek = tf.Weekday;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* GetLocalTime (kernelbase.@)
|
||||
*/
|
||||
void WINAPI DECLSPEC_HOTPATCH GetLocalTime( SYSTEMTIME *systime )
|
||||
{
|
||||
LARGE_INTEGER ft, ft2;
|
||||
|
||||
NtQuerySystemTime( &ft );
|
||||
RtlSystemTimeToLocalTime( &ft, &ft2 );
|
||||
FileTimeToSystemTime( (FILETIME *)&ft2, systime );
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* GetSystemTime (kernelbase.@)
|
||||
*/
|
||||
void WINAPI DECLSPEC_HOTPATCH GetSystemTime( SYSTEMTIME *systime )
|
||||
{
|
||||
LARGE_INTEGER ft;
|
||||
|
||||
NtQuerySystemTime( &ft );
|
||||
FileTimeToSystemTime( (FILETIME *)&ft, systime );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetSystemTimeAsFileTime (kernelbase.@)
|
||||
*/
|
||||
void WINAPI DECLSPEC_HOTPATCH GetSystemTimeAsFileTime( FILETIME *time )
|
||||
{
|
||||
NtQuerySystemTime( (LARGE_INTEGER *)time );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetSystemTimePreciseAsFileTime (kernelbase.@)
|
||||
*/
|
||||
void WINAPI DECLSPEC_HOTPATCH GetSystemTimePreciseAsFileTime( FILETIME *time )
|
||||
{
|
||||
LARGE_INTEGER t;
|
||||
|
||||
t.QuadPart = RtlGetSystemTimePrecise();
|
||||
time->dwLowDateTime = t.u.LowPart;
|
||||
time->dwHighDateTime = t.u.HighPart;
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* LocalFileTimeToFileTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH LocalFileTimeToFileTime( const FILETIME *local, FILETIME *utc )
|
||||
{
|
||||
return set_ntstatus( RtlLocalTimeToSystemTime( (const LARGE_INTEGER *)local, (LARGE_INTEGER *)utc ));
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* SetLocalTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH SetLocalTime( const SYSTEMTIME *systime )
|
||||
{
|
||||
FILETIME ft;
|
||||
LARGE_INTEGER st;
|
||||
|
||||
if (!SystemTimeToFileTime( systime, &ft )) return FALSE;
|
||||
RtlLocalTimeToSystemTime( (LARGE_INTEGER *)&ft, &st );
|
||||
return set_ntstatus( NtSetSystemTime( &st, NULL ));
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* SetSystemTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH SetSystemTime( const SYSTEMTIME *systime )
|
||||
{
|
||||
FILETIME ft;
|
||||
|
||||
if (!SystemTimeToFileTime( systime, &ft )) return FALSE;
|
||||
return set_ntstatus( NtSetSystemTime( (LARGE_INTEGER *)&ft, NULL ));
|
||||
}
|
||||
|
||||
|
||||
/*********************************************************************
|
||||
* SystemTimeToFileTime (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH SystemTimeToFileTime( const SYSTEMTIME *systime, FILETIME *ft )
|
||||
{
|
||||
TIME_FIELDS tf;
|
||||
|
||||
tf.Year = systime->wYear;
|
||||
tf.Month = systime->wMonth;
|
||||
tf.Day = systime->wDay;
|
||||
tf.Hour = systime->wHour;
|
||||
tf.Minute = systime->wMinute;
|
||||
tf.Second = systime->wSecond;
|
||||
tf.Milliseconds = systime->wMilliseconds;
|
||||
if (RtlTimeFieldsToTime( &tf, (LARGE_INTEGER *)ft )) return TRUE;
|
||||
SetLastError( ERROR_INVALID_PARAMETER );
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* I/O controls
|
||||
***********************************************************************/
|
||||
|
|
|
@ -151,7 +151,7 @@
|
|||
@ stdcall CloseThreadpoolWait(ptr) ntdll.TpReleaseWait
|
||||
@ stdcall CloseThreadpoolWork(ptr) ntdll.TpReleaseWork
|
||||
# @ stub CommitStateAtom
|
||||
@ stdcall CompareFileTime(ptr ptr) kernel32.CompareFileTime
|
||||
@ stdcall CompareFileTime(ptr ptr)
|
||||
# @ stub CompareObjectHandles
|
||||
@ stdcall CompareStringA(long long str long str long) kernel32.CompareStringA
|
||||
@ stdcall CompareStringEx(wstr long wstr long wstr long ptr ptr long) kernel32.CompareStringEx
|
||||
|
@ -343,8 +343,8 @@
|
|||
@ stdcall ExpandEnvironmentStringsW(wstr ptr long)
|
||||
@ stdcall FatalAppExitA(long str)
|
||||
@ stdcall FatalAppExitW(long wstr)
|
||||
@ stdcall FileTimeToLocalFileTime(ptr ptr) kernel32.FileTimeToLocalFileTime
|
||||
@ stdcall FileTimeToSystemTime(ptr ptr) kernel32.FileTimeToSystemTime
|
||||
@ stdcall FileTimeToLocalFileTime(ptr ptr)
|
||||
@ stdcall FileTimeToSystemTime(ptr ptr)
|
||||
@ stdcall FillConsoleOutputAttribute(long long long long ptr)
|
||||
@ stdcall FillConsoleOutputCharacterA(long long long long ptr)
|
||||
@ stdcall FillConsoleOutputCharacterW(long long long long ptr)
|
||||
|
@ -540,7 +540,7 @@
|
|||
@ stdcall GetLargestConsoleWindowSize(long)
|
||||
@ stdcall GetLastError() kernelbase_GetLastError
|
||||
@ stdcall GetLengthSid(ptr)
|
||||
@ stdcall GetLocalTime(ptr) kernel32.GetLocalTime
|
||||
@ stdcall GetLocalTime(ptr)
|
||||
@ stdcall GetLocaleInfoA(long long ptr long) kernel32.GetLocaleInfoA
|
||||
@ stdcall GetLocaleInfoEx(wstr long ptr long) kernel32.GetLocaleInfoEx
|
||||
@ stub GetLocaleInfoHelper
|
||||
|
@ -695,10 +695,10 @@
|
|||
# @ stub GetSystemMetadataPathForPackageFamily
|
||||
@ stdcall GetSystemPreferredUILanguages(long ptr ptr ptr) kernel32.GetSystemPreferredUILanguages
|
||||
# @ stub GetSystemStateRootFolder
|
||||
@ stdcall GetSystemTime(ptr) kernel32.GetSystemTime
|
||||
@ stdcall GetSystemTime(ptr)
|
||||
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr) kernel32.GetSystemTimeAdjustment
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr) kernel32.GetSystemTimeAsFileTime
|
||||
@ stdcall GetSystemTimePreciseAsFileTime(ptr) kernel32.GetSystemTimePreciseAsFileTime
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr)
|
||||
@ stdcall GetSystemTimePreciseAsFileTime(ptr)
|
||||
@ stdcall GetSystemTimes(ptr ptr ptr) kernel32.GetSystemTimes
|
||||
@ stdcall GetSystemWindowsDirectoryA(ptr long)
|
||||
@ stdcall GetSystemWindowsDirectoryW(ptr long)
|
||||
|
@ -934,7 +934,7 @@
|
|||
@ stub LoadStringByReference
|
||||
@ stdcall LoadStringW(long long ptr long)
|
||||
@ stdcall LocalAlloc(long long)
|
||||
@ stdcall LocalFileTimeToFileTime(ptr ptr) kernel32.LocalFileTimeToFileTime
|
||||
@ stdcall LocalFileTimeToFileTime(ptr ptr)
|
||||
@ stdcall LocalFree(long)
|
||||
@ stdcall LocalLock(long)
|
||||
@ stdcall LocalReAlloc(long long long)
|
||||
|
@ -1215,7 +1215,7 @@
|
|||
# @ stub QueryStateContainerItemInfo
|
||||
@ stdcall QueryThreadCycleTime(long ptr) kernel32.QueryThreadCycleTime
|
||||
@ stub QueryThreadpoolStackInformation
|
||||
@ stdcall QueryUnbiasedInterruptTime(ptr) kernel32.QueryUnbiasedInterruptTime
|
||||
@ stdcall QueryUnbiasedInterruptTime(ptr) ntdll.RtlQueryUnbiasedInterruptTime
|
||||
# @ stub QueryUnbiasedInterruptTimePrecise
|
||||
# @ stub QueryVirtualMemoryInformation
|
||||
# @ stub QueryWorkingSet
|
||||
|
@ -1447,7 +1447,7 @@
|
|||
@ stdcall SetKernelObjectSecurity(long long ptr)
|
||||
@ stub SetLastConsoleEventActive
|
||||
@ stdcall SetLastError(long) ntdll.RtlSetLastWin32Error
|
||||
@ stdcall SetLocalTime(ptr) kernel32.SetLocalTime
|
||||
@ stdcall SetLocalTime(ptr)
|
||||
@ stdcall SetLocaleInfoW(long long wstr) kernel32.SetLocaleInfoW
|
||||
@ stdcall SetNamedPipeHandleState(long ptr ptr ptr)
|
||||
@ stdcall SetPriorityClass(long long)
|
||||
|
@ -1476,7 +1476,7 @@
|
|||
@ stdcall SetStdHandle(long long)
|
||||
@ stdcall SetStdHandleEx(long long ptr)
|
||||
@ stdcall SetSystemFileCacheSize(long long long) kernel32.SetSystemFileCacheSize
|
||||
@ stdcall SetSystemTime(ptr) kernel32.SetSystemTime
|
||||
@ stdcall SetSystemTime(ptr)
|
||||
@ stdcall SetSystemTimeAdjustment(long long) kernel32.SetSystemTimeAdjustment
|
||||
@ stdcall SetThreadContext(long ptr)
|
||||
# @ stub SetThreadDescription
|
||||
|
@ -1591,7 +1591,7 @@
|
|||
@ stdcall SuspendThread(long)
|
||||
@ stdcall SwitchToFiber(ptr)
|
||||
@ stdcall SwitchToThread()
|
||||
@ stdcall SystemTimeToFileTime(ptr ptr) kernel32.SystemTimeToFileTime
|
||||
@ stdcall SystemTimeToFileTime(ptr ptr)
|
||||
@ stdcall SystemTimeToTzSpecificLocalTime(ptr ptr ptr) kernel32.SystemTimeToTzSpecificLocalTime
|
||||
@ stub SystemTimeToTzSpecificLocalTimeEx
|
||||
@ stdcall TerminateProcess(long long)
|
||||
|
|
Loading…
Reference in a new issue