
- •Содержание
- •2 Вопросы для текущего контроля знаний по темам 70
- •Введение
- •1 Разработка приложений с элементами системного программирования на основе использования технологий межпрограммного обмена данными
- •1.1 Лабораторная работа №1. Обмен данными между потоками с использованием сообщения wm_copydata
- •Краткие теоретические сведения
- •1.1.2 Ход выполнения работы
- •1.1.3 Задание на лабораторную работу 1
- •Варианты индивидуального задания
- •1.1.4 Контрольные вопросы к лабораторной работе 1
- •1.2 Лабораторная работа №2. Обмен данными между приложениями с использованием технологии динамического обмена данными – Dynamic Data Exchange (dde)
- •1.2.1 Краткие теоретические сведения
- •Глобальные данные
- •Посылка и прием данных
- •Завершение сеанса
- •Компонент tddeServerConv
- •Компонент tddeServerItem
- •Компонент tddeClientItem
- •1.2.2. Ход выполнения работы
- •1.2.3 Задание на лабораторную работу 2
- •1.2.4 Контрольные вопросы к лабораторной работе 2
- •1.3 Лабораторная работа №3. Обмен данными между приложениями с использованием технологии динамического обмена данными с помощью файлов, отображаемых в память
- •1.3.1 Краткие теоретические сведения Создание объекта файлового отображения
- •Совместное использование отображаемых данных
- •1.3.2 Ход выполнения работы
- •1.3.3 Задание на лабораторную работу 3
- •1.3.4 Контрольные вопросы к лабораторной работе 3
- •1.4 Лабораторная работа №4. Обмен данными между приложениями с использованием технологии динамического обмена данными с помощью сокетов
- •1.4.1 Краткие теоретические сведения Сокеты
- •1.4.2 Ход выполнения работы
- •1.4.3 Контрольные вопросы к лабораторной работе 4
- •1.5 Лабораторная работа №5. Обмен данными между приложениями с использованием технологии динамического обмена данными с помощью именованных каналов
- •1.5.1 Краткие теоретические сведения Каналы
- •1.5.2 Ход выполнения работы
- •1.5.3 Контрольные вопросы к лабораторной работе 5
- •1.6 Лабораторная работа №6. Использование технологии сом при разработке приложений в Delphi. Создание и использование внутреннего сервера
- •1.6.1 Краткие теоретические сведения
- •1.6.2 Ход выполнения работы
- •1.6.3 Контрольные вопросы к лабораторной работе 6
- •2 Вопросы для текущего контроля знаний по темам
- •Список литературы
- •107/2009. Підп. До друку 25.12.09. Формат 60 х 84/8.
- •84313, М. Краматорськ, вул. Шкадінова, 72.
1.1.2 Ход выполнения работы
-
Ознакомиться с краткими теоретическими сведениями, текстом учебного проекта и материалами к данной лабораторной работе.
-
В соответствии с таблицей индивидуальных заданий, изучить назначение, параметры вызова, возвращаемые значения функции Windows API, используемые ими структуры данных (а если имеется необходимость, то и связанные с ними функции и сообщения). Результаты изучения изложить в отчете по лабораторной работе достаточно подробно и наглядно.
-
Разработать серверное приложение, в котором осуществляется вызов изученных в соответствии с индивидуальным заданием функций Windows API, обработка и представление в понятном для пользователя виде возвращаемых ними результатов или достигаемых с их помощью эффектов (изменений режимов работы объектов операционной системы или пользовательского интерфейса).
-
Разработать клиентское приложение, в котором обеспечить регистрацию пользовательских сообщений для подписки и отказа в получении информации от сервера.
-
Доработать оба приложения с точки зрения посылки и обработки больших структур данных, посылаемых с помощью сообщения WM_COPYDATA. Организовать обмен данными, возвращаемыми Вашими функциями Windows API, между серверным и клиентским приложениями.
1.1.3 Задание на лабораторную работу 1
Согласно своему индивидуальному заданию (вариант выдается преподавателем из перечня, приведенного ниже) реализовать обмен данными о результатах вызова функций Windows API между двумя приложениями по рассмотренной выше в кратких теоретических сведениях и в учебном проекте технологии.
Варианты индивидуального задания
-
DnsHostNameToComputerName
-
ExpandEnvironmentStrings
-
GetCommandLine
-
GetComputerName
-
GetComputerNameEx
-
GetCurrentDirectory
-
GetDiskFreeSpaceEx
-
GetDriveType
-
GetEnvironmentStrings
-
GetEnvironmentVariable
-
GetLocalTime
-
GetLogicalDrives
-
GetLogicalDriveStrings
-
GetStartUpInfo
-
GetSysColor
-
GetSystemDefaultLangID
-
GetSystemDefaultLCID
-
GetSystemDirectory
-
GetSystemInfo
-
GetSystemPowerStatus
-
GetSystemTime
-
GetSystemWindowsDirectory
-
GetTimeZoneInformation
-
GetUserDefaultLangID
-
GetUserDefaultLCID
-
GetUserName
-
GetVersionEx
-
GetVolumeInformation
-
GetWindowsDirectory
-
SetComputerName
-
SetComputerNameEx
-
SetCurrentDirectory
-
SetEnvironmentVariable
-
SetLocalTime
-
SetSysColors
-
SetSystemPowerState
-
SetSystemTime
-
SetTimeZoneInformation
-
SetVolumeLabel
-
SystemParametersInfo
-
TranslateName
-
VerifyVersionInfo
-
VerLanguageName
-
AreFileApisANSI
-
CancelIO
-
CloseHandle
-
CompareFileTime
-
CopyFile
-
CopyFileEx
-
CreateDirectory
-
CreateDirectoryEx
-
CreateFile
-
CreateFileMapping
-
DeleteFile
-
DosDateTimeToFileTime
-
FileTimeToDosDateTime
-
FileTimeToLocalFileTime
-
FileTimeToSystemTime
-
FindClose
-
FindCloseChangeNotification
-
FindFirstChangeNotification
-
FindFirstFile
-
FindFirstFileEx
-
FindNextChangeNotification
-
FindNextFile
-
FlushFileBuffers
-
FlushViewOfFile
-
GetFileAttributes
-
GetFileAttributesEx
-
GetFileInformationByHandle
-
GetFileSize
-
GetFileTime
-
GetFileType
-
GetFullPathName
-
GetStdHandle
-
GetTempFileName
-
GetTempPath
-
LocalFileTimeToFileTime
-
LockFile
-
LockFileEx
-
MapViewOfFile
-
MapViewOfFileEx
-
MoveFile
-
MoveFileEx
-
OpenFileMapping
-
ReadFile
-
ReadFileEx
-
RemoveDirectory
-
SearchPath
-
SetEndOfFile
-
SetFileApisANSI
-
SetFileAttributes
-
SetFilePointer
-
SetFileTime
-
SetStdHandle
-
SystemTimeToFileTime
-
UnlockFile
-
UnlockFileEx
-
UnmapViewOfFile
-
WriteFile
-
WriteFileEx
-
AbnormalTermination
-
Beep
-
GetExceptionCode
-
GetExceptionInformation
-
GetLastError
-
SetErrorMode
-
SetLastError
-
SetLastErrorEx
-
GetMenuContextHelpID
-
GetWindowContextHelpID
-
SetMenuContextHelpID
-
SetWindowContextHelpID
-
WinHelp
-
DisableThreadLibraryCalls
-
DLLEntryPoint
-
FreeLibrary
-
FreeLibraryAndExitThread
-
GetProcAddress
-
LoadLibrary
-
LoadLibraryEx
-
BroadcastSystemMessage
-
CallMsgFilter
-
CallWindowProc
-
DefWindowProc
-
DispatchMessage
-
ExitWindows
-
ExitWindowsEx
-
GetMessage
-
GetMessageExtraInfo
-
GetMessagePos
-
GetMessageTime
-
InSendMessage
-
PeekMessage
-
PostMessage
-
PostQuitMessage
-
PostThreadMessage
-
RegisterWindowMessage
-
ReplyMessage
-
SendMessage
-
SendMessageCallback
-
SendMessageTimeOut
-
SendNotifyMessage
-
SetMessageExtraInfo
-
SetWindowsHookEx
-
TranslateMessage
-
SetWindowsHookEx
-
UnhookWindowsHookEx
-
WaitMessage
-
ActivateKeyboardLayout
-
BlockInput
-
ClientToScreen
-
ClipCursor
-
CopyCursor
-
CreateCaret
-
CreateCursor
-
DestroyCaret
-
DestroyCursor
-
DragDetect
-
GetAsyncKeyState
-
GetCapture
-
GetCaretBlinkTime
-
GetCaretPos
-
GetClipCursor
-
GetCursor
-
GetCursorInfo
-
GetCursorPos
-
GetDoubleClickTime
-
GetInputState
-
GetKeyboardLayout
-
GetKeyboardLayoutList
-
GetKeyboardLayoutName
-
GetKeyboardState
-
GetKeyboardType
-
GetKeyNameText
-
GetKeyState
-
GetLastInputInfo
-
GetMouseMovePointEx
-
LoadCursorFromFile
-
MapVirtualKeyEx
Отчет по лабораторной работе должен содержать тему и цель работы, ход ее выполнения, листинг разработанных приложений (наиболее существенную его часть), макет пользовательского интерфейса и результаты работы программ. Завершать отчет должен вывод об эффективности применения использованной технологии и ее роли в реализации задач системного программирования.