C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 141 - WINAPI и время / Win 32 API / Win32 API

Шаг 141 - WINAPI и время

WIN 32 API поддерживает пять форматов времени, и функции для получения времени и преобразования форматов с учетом часовых поясов. Вот эти типы.

System	SYSTEMTIME  		Года, месяц, день, час, секунда, и миллисекунды,
				взятые с внутренних аппаратных часов.
File	FILETIME			100-наносекунд интервалов 1 Января, 1601.
Local	SYSTEMTIME ИЛИ FILETIME	Системное время или файловое время преобразованное
				в локальное время с учетом  часовых поясов.
MS-DOS	WORD			Упакованное 16-битовое слово для даты другое для времени.
Windows	DWORD 			Количество миллисекунд с тех пор как загруженная система;
				повторяется каждые 49.7 дней.

Как видите у нас время храниться в WORD, DWROD и еще есть две струтуры. Структура SYSTEMTIME хранит дату и время используя отдельные поля для месяца, дня, года, дня недели, часа, минут, секунд и миллисекунд.

typedef struct _SYSTEMTIME 
{
	WORD wYear;		// Указывает текущий год
	WORD wMonth;		// Текущий месяц; Январь = 1, Февраль = 2, и так далее
	WORD wDayOfWeek;		// Текущий день недели; Воскресенье = 0, Понедельник = 1, и так далее. 
	WORD wDay;		// Текущий день месяца.
	WORD wHour;		// Час.
	WORD wMinute;		// Минуты.
	WORD wSecond;		// Секунды.
	WORD wMilliseconds;	// Миллисекунды.
} SYSTEMTIME;

Структура FILETIME - это 64-х разрядное значение, представляющее число сто-наносекундных интервалов, прошедших с первого Января 1601 года:

typedef struct _FILETIME 
{
	DWORD dwLowDateTime; 	// Младшие 32 бита времени файла 
	DWORD dwHighDateTime;	// Старшие 32 бита времени файла
} FILETIME; 

| |
Автор Каев Артем.
[AD]