Лабораторные работы / Задания / ЛР 1 ФУНКЦИИ ПОЛУЧЕНИЯ СИСТЕМНОЙ ИНФОРМАЦИИ
.pdfЛабораторнаяработа№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. Примерыразр |
аботанныхприложений( |
результаты итексты программ). |