Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторные работы / Задания / ЛР 1 ФУНКЦИИ ПОЛУЧЕНИЯ СИСТЕМНОЙ ИНФОРМАЦИИ

.pdf
Скачиваний:
17
Добавлен:
15.02.2021
Размер:
529.16 Кб
Скачать

Лабораторнаяработа№1

Функцииполучесистемнойинформацииия

Цельработы:

получениепрактическихнав

 

ыкпрограммированиюп

Win32 API.

 

Windows API (Application Programming Interface) —программный интерфейс

пользовательскогорежимадляОСсе

 

 

мейства Windows. Допоявления64

-разрядныхверси

й

Windows программный интерфейс32 -разрядныхверси

й ОС Windows назывался Win32 API

вотличиеисходного16

 

 

-разрядного Windows API, программногоинтерфе

йса 16 -

разрядныхверси

 

й Windows. Внастоящеев

ремятермин

Windows API можеттноситьсякак

 

 

к 32 -разрядным,таки 64

 

-разряднымпрогра м

ныминтерфе

йсам

Windows. Описание

WindowsсодержитсявдокументацииAPIWindowsДокументациядоступнаSDK.

 

 

 

 

 

 

 

 

бесплатнопоадресуhttps://developer.microsoft.com/en

 

-us/windows/desktop/developТакже

.

 

онавключаетсявовсеуровниподпискиMSDN (MicrosoftпрограммыDeveloper Network),

 

 

 

 

 

 

поддеразржкиабот

 

 

чиоткомпаниивMicrosoft.

 

 

 

 

 

 

 

Win32сос

API

тоит

изнаборафункцийпод

 

 

программ,предоставл

 

яющих

программныйдоступквозм

 

 

ожностямоперационнойсистемы

 

. Win32содеAPI

ржиттысячи

функций дляреал

изацвидвсехсеровперационнойовсистемы

 

 

.

 

 

 

 

API-функцииWindowsвходят

 

состав библиотек динамическойкомпоновки

 

 

(DLL).

Библиотекадинамическойкомпоновки

 

являетсяисполняемым

файл,котсомдержитрый

 

 

несэколькоспортируемыхфункций

 

 

,тоестьфункций,которымгутбращатьсядругие

 

 

 

 

 

исполняемыеприложенияЕХЕ(илиDLL)ФайлыDLLнамногопроще. файловЕХЕ,

 

 

 

 

 

 

 

 

 

например,внихнеткода,котоупрбграфичыавлялйинтерфейсомским

 

 

 

 

 

 

 

 

ли

обрабатывалсообщенияWindows.

 

 

 

 

 

 

 

 

 

 

ДляразмещенияAPI

 

-функцийиспользуетWindowsнесколькоВDLL.

 

 

 

 

 

 

действительностибольшаячасть

 

 

функцийWin32содевтрAPIDLL:ехжится

 

 

 

 

 

 

KERNEL32.DLL - содержитоколофункций700,которыепредляназначены

 

 

 

 

 

 

управленияпамять

 

ю,процессамипотоками;

 

 

 

 

 

 

 

 

USER32.DLL - предоставрядка600функцийуправленияляетпользовательским

 

 

 

 

 

 

интерфейсом,например,созданиоконперсообщенийдачейм;

 

 

 

 

 

 

 

 

 

GDI.DLL - экспортиоколо400функцийдляруетисованияграфическихобразов,

 

 

 

 

 

 

отображенияте

 

кстаиработысошрифтами.

 

 

 

 

 

 

 

 

КромеэтбиблиотекхWindowsтакжесоднесколькоржитдругихDLLболееузкой

 

 

 

 

 

 

 

 

специализации.

Например,

 

 

 

 

 

 

 

 

 

COMDLG32.DLL - открываетдоступпочти20функциямуправлениястандартными

 

 

 

 

 

 

диалоговымиокнамиWindows;

 

 

 

 

 

 

 

 

 

 

LZ32.DLL - хранпримет

рно12функ

цийархивированразархивироя

 

 

ванияфайлов;

ADVAPI32.DLL - экспортируетоколо400функций,связащитойнныхобъектов

 

 

 

 

 

 

работойсреестром;

 

 

 

 

 

 

 

 

 

 

 

 

WINMM.DLL - содержитоколо200функцийот, носящихсямультимедиа.

 

 

 

 

 

 

В Windows 8 появилисьновы

й API иисполнительнаясредаподдержки

 

Windows

Runtime (WinRT)состоитиз. WindowsплатформенныхсервисоRuntime

 

 

 

в,предназначенных

дляразработчи

 

ковприложени

й Windows Apps (ранееназывались

Metro Apps, Modern Apps,

Immersiveи WindowsAppsStore Apps).

 

ПриложенияWindows

Apps

 

подляходят

различных форм-факторовустро

йств,отминиатюрных

 

IоТ-устройствдотелефонов,

 

планшетов,ноутбуков,настольныхсистем,дажетакихустро

 

 

 

 

 

йств,как

Xbox

One и

MicrosoftПриложенияWindowsHoloLensстрп ятсяApps.

 

 

 

 

новымправиламнепохожи

 

 

 

напривыч ныеприложенияWindows,

 

 

котеперьорыена

 

зываютсядесктопными

 

или

классическими приложениямиWindows.

Классические прилмиспользоватьгутжения

 

 

 

подмножествоWinRT API

 

и,наобор,прилWindowsотжениямогутиспольApps

 

 

 

 

 

зовать

 

 

 

 

 

2

 

 

 

подмножество Win32. Информация отом,какие

API доступныдлякаждо

й изплатформ

приложений,содержится

документации MSDN.

 

 

Основные Win32 API-функцииполучениясист

 

емнойинформации

:

GetComputerName

 

GetSystemMetrics

GetWindowsDirectoty

GetKeyboardTyре

 

GetTempPath

 

SetСоmрuterName

GetSysColor

 

 

 

GetUserName

 

SetSysColors

 

CecSystemDirectory

 

GetVersion

 

SystemParametersInfo

GetSystemlnfo

 

 

GetVersioriEx

 

GetUserName

 

 

 

 

 

Имякомпьютера

 

 

ФункцGetComputerNameияспо

 

льзуетсядляполучениятекущего

 

имени компьютера.

СвязаннаяснейS

 

etС omputerNameиспользуетсяд

ляприсвименикомпьютеруения.

 

BOOL GetComputerName(

 

 

 

 

 

LPTSTR

IpBuffer,

//Адресбуфераимени.

 

 

 

 

LPDWORD nSize

//Р

азмербуфераимени.

 

 

 

);

 

 

 

 

 

 

 

 

В соответствиидокументацией,выполнениефункцииGetComputerName

 

 

вWin dows

9хзавершит сянеуд,еслирабуферачейзмервходдаменьшеных,

 

 

чем величина

константыMAX_COMPUTERNAME_LENGTH + 1.

 

 

 

 

 

Путиксистемнымкаталогам

 

Windows

 

ФункцииGetWindowsDirectory, GetSystemDirectory

и GetTempPathнаходятпутьк

каталогу,системнкаталомуг

 

 

 

каталогувременныхфайловWindowsНапример, .

 

функцияGetSystemDirectoryопределенакак:

 

 

 

 

 

 

U1NT GetSystemDirectory(

 

 

 

 

 

LPTSTR IpBuffer,

 

 

//Адресбуферасистемнк .талогоа

 

UINT nSize

 

 

 

 

 

 

);

 

 

 

 

//Разме рбуферакаталога.

 

UINT GetWindowsDirectory(

 

 

 

 

LPTSTR IpBuffer,

 

 

// Адрес буфера каталога Windows.

UINT nSize

 

 

// Размербуферакаталога.

 

);

 

 

 

 

 

 

 

 

DWORD GetTempPath(

 

 

 

 

 

DWORD nBufferLength,

 

// Размербуферавсимволах.

 

LPTSTR IpBuffer

 

 

// Указатнабуферпутиккаталогуль

 

);

 

 

 

 

//временныхфайлов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Версияоперационнойсистемы

 

 

Втабл. перечислены1 названия

 

 

продуктовсеме

йства Windows, ихвнутренние

номераверси

й идатырелиза.Начинаяс

 

Windows 7, нумверсиация

й пересбытьала

очевидной.Системебылприсвоенномерверсии

 

 

 

6вместо.1 В7момент. выхода

Windows

Vista (номерверсии6.0)

 

WindowsХР

(версия

5оставаласьеще.1) весьмапопулярной,и

в

некоторыхприложенпроверкаверсияхи

 

 

 

ОСсталаработатьнекорректно,таккак

 

проверялисьдваусл:н виямер

 

 

 

 

основнойверсиибольшеилирав5,н

 

номер

дополнительнойверсиибольшеилиравСоответственно1. ,для

 

 

 

Windows Vistaэти

условияневыполнялись.ВоизбежаниебудущподкобныхллизийкомпанияMicrosoft

 

 

 

 

 

 

3

 

решилаоставить

носновноймерверсии

равным 6сповышением

номера дополнительной

версии дляновыхпродуктов.Однако

в Windowsномерверсиибылобнов10

лендо10.0.

Таблица1Релизыоперационной. системыWindows

ФункцияGetVersionExвозвращаетинформацверсииоперационнойюстемы

Windowsиможетисподопределенияьзоватьсярабочейсистемы -Windows 95, Windows 98и лиWindowsОнаобъявляетсякакNT.

BOOL GetVersionEx(

LPOSVERSIONINFO IpVersionlnformation. Указательна//структуру

//синформациейверсии.

);

 

 

где IpVersionlnformation - указательнаструктуру

OSVERSIONINFO,котоопределенаая

следующимобразо:

 

 

typedef struct _OSVERSIONINFO (

 

DWORD dwOSVersionlnfoSise;

 

DWORD dwMajorVersion;

 

 

DWORD dwMinorVersion;

 

 

DWORD dwBuildNumber;

 

 

DWORD dwPlatformId;

 

 

TCHAR szCSDVersion[ 128

];

 

) OSVERSIONINFO;

 

 

Вдокументации обэтойструктуре

говоритсяследующее:

dwOSVersionlnfoSize

задает размер структуры OSVERSIONINFO в байтах. Дляструктурэтоявляется

общим требованием.ТаккакDWORD

- четырехбайтовоебеззнаковоетипаlong

 

поскольку Delphi и VBпреобразуют

строкуиз128символовмассив

имволовANSIиз

128байт,об

щийразмерструктурысоставляет

4x5+байт.128 = 148

 

dwMajorVersion

 

 

указывает носновноймерверсииоперационнойсистемы.Например,дляWindows

 

NTверсии3

.51носновноймерверсии

- 3Для. WindowsиWindowsNT 49.0

х номер

основнойверсии

- 4.

 

 

dwMinorVersion

 

 

указываетдополнительныйномерверсииоперационной

системы.

 

dwBuildNumber

 

 

 

 

 

 

4

 

 

 

 

указываетномерсбооперационнойкисистемыдляWindows NT

 

 

 

 

. ДляWindows 9хдва

младшихбайтасодержатномерсбо ки

 

 

перационнойсистемы,двастарш

 

 

 

их байта -

носновноймерверсиидополнительныйномерверсии.

 

 

 

 

 

 

 

dwPiatformId

 

 

 

 

 

 

 

идентифициплатфооперационнойсистемымуует

 

 

,

можимодноеть

из

следующихзначений

:

 

 

 

 

 

 

 

VER_PLATFORM_WIN32s (= 0) .

 

Win32s,работающая

наWindows

VER_PLATFORM_WIN32_WINDOWS (= 1). Win32,работающая

 

на Windows 95 или

VER_PLATFORM_WIN32_NT (= 2).

Windows 98.

 

 

 

Win32, работающая на Windows NT

szCSDVersion

 

 

 

 

 

 

 

в Windows NTсодестзавершающеюсяжитокунулевымсимволом

 

 

 

 

,напри мер

«Service Pack3», которая указываетсамуюпоследнююв

ерсиюустановлсистеменного

 

служебнпрограммпакета(service pack

 

 

). Строкабудетпустой

,если

служебныйпакетне

установлен. ВWindows

95 включастрокузавенулевымршающимсимвол

 

 

 

ом,вкоторой

можетбытьпр

оизвольдополнительнаяфор

 

мацияобоперационнойсистеме

 

.

НачинаясWindowsфункцияWindows8,поумолчаAPI GetVersionEx

 

 

 

 

ниювозвращает

номерверсии6.2 (

Windows 8) независимоотфактическо

й версииОС.Этосделяано

 

того,чтобысвестикминимумупроблемысовместимост

 

 

и.Крто, гоме

 

некоторые

компонемогутустанр«тыавньшеремениливаться»,безсогласованияофициальным

 

 

 

 

 

 

выпуском Windows. Внастоящеевремяэтафункция

 

 

объявленаустаревше

й. При

необходимости узнатьфактическуюверсиюОС,имеетсявозможность

 

 

 

получитьеепри

помощифункции

VerifyVersionlnfo илиболееновыхвспомогательных

 

 

API проверки

версий:

IsWindows80rGreater,

IsWindows8Pointl0rGreater,

IsWindowsl0OrGreater,

IsWindowsServer ит.д.Крсовместимостьт, го разнымиоперационнымистемами

 

 

 

 

можетбытьобозначенавманифестеисполняемогофа

 

 

 

йла,чтопркизменениюводит

 

результатоввызэт ва

 

й функции.

 

 

 

 

 

 

Дляпросминформациивет сии

 

 

Windows можновоспользоватьсяпрограм

мой

командной строки ver илиееграфическо

 

й версией winver. Графическаяверсиятакже

выводитномерсбо ки

 

Windows, этаинформацияможетбытьполезенадляучастников

 

 

 

 

программыпредварительно

й оценки

Windows Insider, а

такжедляуправления

обновлениямибезоп,такнексности

 

 

й указануровеньустановленногоисправления.

 

 

 

Системныеметрики

Функция GetSystemMetricsполучаетинформациюметрикахсистеме(единиц измерения)объектовоперационнойсистемы.

Int GetSystemMetrics(

int nlndex //Системнаяметрилустановкика конфигурации. ) ;

Параметр nIndexпризнимаетачениеоднойиз

 

 

84 возможныхконстант.Функция

 

возвращаетзапрошеннединицзмые

 

 

ерениявобщем(случаевпикселя

хилив

безразмерныхединицах).

 

 

 

 

 

Чтдатьобпрыщедставлениеотипевозвращаинформации,здесьприведеныой

 

 

 

 

образцы некоторых константдляэтойфункции.Ед змерениявысцы

 

 

отыиширины

приведеныпикселя

х:

 

 

 

 

SM_CMOUSEBUTTOMS = 43

// Delphi

' Количествоклавишмы

ши.

Const SM_CMOUSEBUTTOMS = 43

 

// VB

 

 

SM_MOUSEWHEELPRESENT = 75

 

 

' Истина (True), если мышь имеет

 

 

 

 

' колесопрокрутки.

 

SM_SWAPBUTTON = 23

SM_CXBORDER = 5 SM_CYBORDER = 6 SM_CXSCREEN = 0 SM_CYSCREEN = 1 SM_CXFULLSCREEN = 16

SM_CYFULLSCREEN = 17 SM_CXHTHUMB = 10

SM_CXICONS PACING = 38 SM_CYICONSРАСING =З9

SM_CYCAPTION = 4

5

' (Только Win NT 4или Win 98.)

'Истина( True),есклавимыши

'можнопомемышьстаминять(

'для левши).

ивысринарамкиокна.та

ивысотаринаэкрана.

ивысотаринаобласти 'прилв олноэкранномжения 'режиме.

'Шипрямоугольногина окурсора 'вгоризполосентальной 'п рокрутки.

'Размячейсеткидляры 'значкаврежимепросмотра 'крупными значками. ' Высотастандартнойобласти 'заголовка.

 

 

Системныепараметры

 

 

ФункцияSy

stemParamterslnfo - этомощ

наяфункция,предназнадляполученияная

 

илиустановкиехист

емныхпараметров.

Также

онаможет

впроцессеустановки

параметраобновлятьльзоватепрофи.Нижепривлеедекларацияьскиедена:

 

 

 

 

BOOL SystemParametersInfo

(

 

 

 

UINT uiAction,

//

Запрашиваемыйилиустанавливаемый

UINТ uiParam,

//

системный параметр.

 

//Зависотпрсисняттемного

 

PVOID pvParam,

//

параметра.

 

 

//Зависитотпринятогосис

 

темногопараметра.

UINT fWinIni

//Флагобновленияпользоватепрофи. льскогоя

 

};

 

 

 

 

 

Этафункцможетпри,поменьшейния,ереать

 

 

90разлизначенийuiActionных .

НижеприведеторыенекконuiAction:станты

 

 

 

 

SPI_GETACCESSTIMEOUT - используетсядляопред

еленияданныховременных

интервалах,относящкспецвозможностямиальнымхся

 

 

Windows;

SPI_GETANIMATION – исподопределенияьзуетсяданобныхимации,

 

 

используемойприсворачиввосстоконановлении

 

 

;

SPI_GETBEEP - признакразреш

ениязвуковыхсигналов;

 

 

SPI_GETBORDER – параметруприсваиваетсякоэффициент,управтолщинойяющий

 

 

рамкидляизменеразмеровокна; ия

 

 

 

 

SPI_GETDEFAULTINPUTLANG –

параметруприсваивается32

-х разрядный

дескрипторраскладкиклавиатурыпоумолчанию;

 

 

 

 

SPI_GETDRAGFULLWINDOWS – характеристики переокнамещенияышью;

SPI_GETFASTTASKSWITCH – признак, определяющийбыстрое

переключение задач;

SPI_GETFILTERKEYS - исподопредельзуетсяданныхосп циальныхя

 

 

возможностях,относящихсякработеклавиатурой;

 

 

 

 

SPI_GETFONTSMOOTHING - режимы сглаживания шрифтов;

SPI_GETGRIDGRANULARITY – гранулярностьсеткирабочегостола;

6

SPI_GETICONMETRICS - исподопределенияьзуетсяинформации характеристииконок. ах

 

 

 

Систцветамные

ФункцииGetSetSysColorsиспользуют

 

 

сядляполучеиустановкицветовия

различныхэлементовсистемы,такаккнопкиих,строкизаголовк.д.Цветовой

 

 

 

палитрой также можетуправлятьпользовательспомощьюапплетаDisplayЭкран)на (

 

панелиControlПанельуправления)Panel. (

 

 

 

Декларация GetSysColor:

 

 

 

DWORD GetSysColor (

 

 

 

int nIndex

 

// Элемент экрана.

);

 

 

 

 

nIndex можетпризначениеиматьоднойизмножествасимвольныхко,настантпример

 

#define COLOR_ACTIVECAPTION

3

Возврзначениещаемое

-

этоцвфорет

матеRGBВчастнос,каждыйцвет. и

занимаетодинбайтввозвращаемомзначениитипаunsignedкрасныйlong:

 

 

цвет - младший

байт,зеленый

- следующийбайт,далее

 

 

- синийцвет.Самыйстабайтравеншийнулю.

Байтыцвет

овпредставлперемтипеннойы

 

 

аlong в обратнпоряд, смприколькуе

запеременнойисивпамятьбайтыраспоотмлакстаршимгдших.ются

 

 

 

ОбъявленфункцииSetsysColors:е

 

 

 

BOOL WINAPI SetSysColors (

 

 

int cElements,

 

 

// Количество изменяемых

CONST INT *lpaElements,

 

// элементов.

 

// Адрес массива элементов.

CONST COLORREF *lpaRgbValues

// Адрес массива значений RGB.

ЗдесьcElementsопределяетколсистемныхчествоэлементов,цветко ребуетсяорых

 

 

 

изменить; IpaElements

- указательн

ацелочисленныймассивVC++

, котсодержитрый

индексыизменяемыхэлементов; IpaRgbvaluesссылаетсянацелочисленныймассивVC++

 

 

 

новыхзначц форматеетанийRGB.

 

 

 

 

 

Функциидлярабсовременемты

 

 

ВовнутреннейработеWindowsиспользуетсяуниверсальноекоо

 

 

рдинированноевремя

UTC (UniversalтакжевстречаетсятермCoordinated Time);

 

 

инGMT,тоестьсреднее« время

поГринвичу» (GreenwichпоскзаточкулькуMean Time),

 

 

отсчетапринятГри,А. вичглия

ПреобразовамеждусистемместнымвременемымияWindowsос

 

 

 

уществляютсяпри

помощипоправокдляместнчаспояса,задвговгосистеменного.ФункцииWin32

 

 

 

позволяютработатькакместном,такисистемномвремпр ниобразовыватьпох

 

 

 

меренеобходимости. такжеWin32включаетрядфункцийдляработысфайловым

 

 

 

временемидатой, есть

еменемидатойфайлов,хранящих

 

сявфайловойсистеме

ФункцииWindows,предназнадляполуинфорченвремия,ныеациини

 

 

 

перечислены втаблице2

. Следуетучитывать,чтовнутпредставлениисистемыннем

 

вреизменяетсявтак

тахтаймера,продолжкотможетирыхтельностьзменятьсяв

 

 

зависимостиотиспользуемпроцессогора

 

 

версии

операционнойсистемы.Интервал

измерениявремениWin32обычнозанимаетот10до15миллисекунд.Длительностьтакта

 

 

 

определяетточностьрезул, татов

возвращаемыхэтимифункциями.

 

7

Таблица2.

Основные функцииWindowsдля

рабсоты временем

Функция

Описание

 

EnumCalendarlnfo

Перечкалеисляетндарнуюформацию,зависящуюот

 

EnuinDate Formats

локальногоконтекста

 

Перечисляетформатыдаты,доступныевзаданном

 

EnumTimeFormats

локонтекстеальном

 

Перечислядоступныеформатывремени, заданном

 

GetLocalTime

локонтекстеальном

Получаеттекущееместноевремя

 

GetMessageTime

Возвращаетвремя(милли)посекундахтупления

 

 

последнсообщенияочs пгориложенияедь.Время

 

 

отсчитываетсяначалатекущегосеансаработы

 

GetSystemTime

Windows

 

Получаеттекущеесистемноевр мя

 

GetSystemTimeAdjustment

Определяет,применяется

ивсистемепериодическая

 

по,правкаовышающаяточностьот исче емного

 

GetTickCount

времени

 

Получаетпродолжительностьработытекущегосеанса

 

 

работывWindowsвмиллисекундах

 

GetTimeFormat

Форматируетвремязаданномлоконтекстеальном

 

GetTimeZonelnformation

Получаинформациютекущемчастп вомясе

 

SetLocalTime

Задаетмесвремяное

 

SetSystemTime

Задаетсистемноевремя

 

SetSystemTimeAdjustment

Задаетпериодическуюпо,правкуименяемую

 

 

системойдляповышенияточностиотсчвр менита

 

SetTimeZonelnformation

Задаетчасповойяс

 

SystemTimeToTzSpecificLocalTime

Преобразуетсистемноевремямес ное

 

 

 

8

 

 

 

 

 

СОДЕРЖАНИЕОТЧЕТА

 

1. Наименованиелабораторнойработы,еецель.

 

 

 

 

2. Разработанное программнобеспечениеприл, женияспечивающего

 

получение

следующейсистемнойинформации:

 

 

 

 

§

Имякомпьютера

,имяпользователя

 

;

 

§

ПутиксистемнымкаталогамWindows

 

 

;

 

§

Версияоперационнойсистемы

;

 

 

 

§

Системныеметрики

(менее2

метрик)

;

§

Системныепараметр

ыменее( параметров2 );

 

§

Систцветамные

(определитьцветдля

 

некоторых символьныхконстант

 

изменитьегоналюбойдругой)

;

 

 

 

§

Функциидляработысовременем

 

;

 

 

§Дополнительные API-функции:

То,прочтояг ворила:)

 

Стзаданиярые:

 

Вариант

Название API-функции

1

ActivateKeyboardLayout, GetCurrencyFormat, GetLastError, OemToChar

2

CharToOem, GetCursor, GetLocaleInfo, OemToCharBuff,

3

AnsiToOemBuff, GetCursorPos, GetNumberFormat, SetCaretPos,

4

ClipCursor, GetDoubleClickTime, GetOEMCP, SetCursor

5

CreateCaret, GetEnvironmentStrings, GetQueueStatus, SetCursorPos

6DestroyCaret, GetEnvironmentVariable, GetSystemDefaultLangID, SetDoubleClickTime

7

EnumSystemCodePages, GetInputState, GetLastError, SetKeyboardState

8

ExitWindowsEx, GetKBCodePage, GetSystemDefaultLCID,

 

SetCaretBlinkTime

 

9

GetACP, GetKeyboardLayout, GetSystemPowerStatus, SetComputerName

10

GetAsyncKeyState, GetKeyboardLayoutList, GetTickCount, SetLocaleInfo

11

GetCaretBlinkTime, GetKeyboardLayoutName, GetLastError,

 

SetSystemCursor

 

12

GetCaretPos, GetKeyboardState, GetUserDefaultLangID,

 

SetSystemPowerState

 

13

GetClipCursor, GetKeyboardType, GetUserDefaultLCID, ShowCursor

14

GetCommandLine, GetKeyNameText, MessageBeep, SwapMouseButton

15

GetCPInfo, GetKeyState, GetLastError, UnloadKeyboardLayout

3. Примерыразр

аботанныхприложений(

результаты итексты программ).