Типы данных, используемые в Win32-приложениях — КиберПедия 

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Типы данных, используемые в Win32-приложениях

2017-06-11 447
Типы данных, используемые в Win32-приложениях 0.00 из 5.00 0 оценок
Заказать работу

Мобильность программ и их независимость от конкретной платформы во многом обеспечивается введением новых стандартных типов данных - определенных на основе простых типов языка программирования Си. Имена стандартных типов данных состоят из символов верхнего регистра.

Ниже приведен список наиболее распространенных типов: симовольных, целых, булевских, указателей и описателей (handles). Символьные, целые и булевские типы соответствуют аналогичным типам большинства диалектов языка Си. Имена типов-указателей содержат префикс "P" или "LP". Описатели имеют отношение к ресурсам, загруженным в память.

Наиболее часто используются следующие типы данных:

· BOOL - булевская переменная (TRUE или FALSE);

· CHAR - 8- разрядный символ;

· DWORD - 32-разрядное беззнаковое целое;

· HANDLE - описатель объекта;

· INT - 32-разрядное целое;

· LPSTR - указатель на строку 8-разрядных символов, заканчивающуюся нулем;

· LPTSTR - LPWSTR в случае Unicode или LPSTR в случае ANSI;

· LPVOID - указатель на любой тип;

· LPWSTR - указатель на строку 16-разрядных (Unicode) символов, заканчивающуюся нулем;

· WCHAR, в случае Unicode или CHAR в случае ANSI;

· WCHAR - 16-разрядный Unicode символ;

· WORD - 16-разрядное беззнаковое целое.

Остальные типы данных будут изучаться по мере необходимости.

Обработка ошибок

Профессиональная разработка программных приложений предполагает включение кода для корректного восстановления после потенциальных ошибок. В случае возникновения ошибки система может справиться с ней самостоятельно, но в экстремальных ситуациях может потребоваться вмешательство пользователя.

Вызываемая Win32-функция может возвратить значение, свидетельствующее об ошибке (например, NULL для функций типа HANDLE или ноль для функций типа BOOL). В таких случаях можно попытаться выявить тип ошибки при помощи функции GetLastError - она возвращает код последней ошибки, который хранится в локальной памяти потока, вызвавшего ошибку. Коды ошибок (а их более 10 тысяч), представляющие собой 32-битные числа, находятся в заголовочном файле WinError.h.

Если приложение содержит функции, к которым обращаются другие программы, то желательно, чтобы эти функции синтезировали код ошибки в случае возникновения ошибочных ситуаций, то есть вели себя подобно функциям Win32 API. Это можно сделать при помощи функции SetLastError.

Для преобразования кода ошибки в ее содержательное описание предназначена Win32-функция FormatMessage.

Прогон программы, синтезирующей информацию об ошибке, которая имитирует отсутствие нужного файла

//Практическая работа № 16

//Группа xxxxxx Терминал N ФИО

#include “windows.h”

#include “stdio.h”

void GetError() {

DWORD dw = GetLastError(); //Получение кода последней ошибки

printf("GetLastError returned %u\n", dw); //Печать кода последней ошибки

}

void SetError() {

DWORD dw = ERROR_FILE_NOT_FOUND;//Выбор кода ошибки

SetLastError (dw);//Установка кода ошибки

}

void main() {

printf("Hello world \n");

SetError();// Вызов установщика кода ошибки

GetError();// вызов Расшифровщика кода ошибки

}

/* При выполнении данной практической работы я освоил

.

*/

 

Рекомендуется реализовать данную программу и сверить номер выдаваемой ошибки с соответствующим перечнем в MSDN или файле заголовка WinError.h.

Заключение

В данной лекции рассмотрены вопросы, важные с точки зрения практического освоения ОС Windows и разработки Win32-приложений. Основным источником сведений об API системы является справочная система MSDN. Разработчику приложений необходимо владеть средствами разработки и отладки, знать основные типы данных и форматы хранения текстовых строк, а также правильно обрабатывать ошибки. Дополнительным источником сведений о системе являются разнообразные инструментальные средства.

Вопросы:

1.Что такое Win32 API?

(Win32 API предоставляет всеобъемлющий интерфейс, позволяющий выполнить каждое действие несколькими способами и покрывающий все области, с которыми должна работать операционная система.)


Поделиться с друзьями:

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.008 с.