
- •«Программа создания мультимедийного полиэкрана»
- •Оглавление
- •Введение.
- •Язык программирования Microsoft Visual Basic
- •Классический Visual Basic (версии 5-6)
- •Элементы управления, используемые в проекте:
- •Функции Windows api, используемые в проекте.
- •Структуры, используемые в приложении «Video2Bmp».
- •Члены структуры:
- •Составные части приложения «Video2Bmp».
- •Результирующие файлы.
- •Заключение.
- •Используемые источники.
Функции Windows api, используемые в проекте.
Интерфейс программирования приложений (иногда интерфейс прикладного программирования) (англ. application programming interface, API ) - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.
API – функции [3], которые возвращают определенные значения. И все приложения Windows их постоянно используют для выполнения типовых задач. Физически они находятся в особых исполняемых файлах с расширением .dll, которые называются библиотеками динамической связи. По большому счету мы можем использовать эти функции также, как и встроенные функции VB. Вообще-то не все API могут быть вызваны из VB, так как их параметры несовместимы с Visual Basic. Все API написаны на языке C - чуждого по синтаксису и структуре языку VB.
Использование API начинается с их объявления. Неправильные объявления являются причиной большинства ошибок. Объявлять их предпочтительнее в стандартном модуле с ключевым словом Public, хотя, если проект простой, можно объявить их и в форме.
Синтаксис объявления функций API: Public/Private Declare Function Имя_функции Lib Библиотека Alias Псевдоним (Список_аргументов) As Тип
Public/Private - понятно, что ключевые слова. В коде формы функция объявляется с ключевым словом Private, в стандартном модуле - с Public, или вовсе без ключевого слова (но при этом использование функции будет возможно только в модуле). Declare Function - команда, которая собственно объявляет функцию Имя_функции - определяет то имя функции, с которым мы будем в дальнейшем работать в коде программы Библиотека - определяет имя DLL-библиотеки (по сути имя файла), содержащей функцию Псевдоним – как бы второе имя функции, псевдоним, который можно использовать в VB, если Имя функции по каким-то причинам (несовместимость синтаксиса, совпадение с именами команд и функций VB) не может быть использовано. Имеется не всегда. (Список аргументов) - это переменные строго определенного типа, которые мы передаем или получаем. Их имена для нас не имеют особого значения, поскольку мы все равно в программе используем свои. Тип - тип значения, которое возвращает наша функция, а именно Byte, Long, Boolean, Integer, Single, Double, Currency, Date, String, Object, Variant. В объявлении определять тип возвращаемого значения можно и с помощью значка определителя типа (например типу Integer соответствует значок %), тогда секция Тип не нужна. Подробнее типы данных ты можешь посмотреть на странице "Типы данных, поддерживаемые VB".
Опишем некоторые, самые основные API функции, используемые в проекте «Video2Bmp».
AVIFileInit - функция инициализирует AVIFile библиотеки(библиотеки обеспечивающие работу с Avi файлами).
AVIFileExit - функция закрывает AVIFile библиотеку и уменьшает счетчик ссылок для этой библиотеки.
Функция AVIFileOpen - открывает файл AVI и возвращает адрес файла, используемый для доступа к нему. Библиотека AVIFile ведет подсчет количества открытий файла, но не сколько раз он был освобожден. AVIFileCreateStream - функция создает новый поток, в существующий файл и создает интерфейс для нового потока.
AVISaveOptions - функция получает параметры сохранения для файла и возвращает их в буфер.
AVISaveOptionsFree - функция освобождает ресурсы, выделенные для AVISaveOptions функции.
AVIMakeCompressedStream - функция создает сжатый поток от несжатого потока и фильтр сжатия, и возвращает адрес указателя с потоком сжатого. Эта функция поддерживает аудио и видео сжатия.
AVIStreamSetFormat - функция устанавливает формат потока в указанной позиции.
AVIStreamWrite - функция позволяет записывать данные в поток.
SetRect - устанавливает позицию и размер прямоугольника. Две координаты указывают на левые верхние и нижние правые углы прямоугольника. Функция возвращает 0 в случае ошибки или 1в успешном случае.
MmioStringToFOURCC - функция преобразует строку с завершающим нулем в четырех-значный код.
CoTaskMemFree - освобождает блок памяти задачи ранее выделенную через вызов CoTaskMemAlloc или CoTaskMemRealloc функции.
Lstrcat - Добавляет одну строку в другую.
SHBrowseForFolder - Отображает диалоговое окно, которое позволяет пользователю выбрать папку Shell.
SHGetPathFromIDList - Преобразует элемент списка (идентификатор пути) в файловой системе.
SHGetSpecialFolderLocation – Получает указатель на ITEMIDLIST структуры в специальную папку.