Использование API-функций в программах на Visual Basic

Домой Наверх Следующий

Примеры использования API-функций

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

Но Вы ошибались. На самом деле в API нет ничего сложного и таинственного (хотя подводные свои камни тут есть, но с другой стороны, где же их нет?).

Итак, что же такое API? API расшифровывается как Application Programming Interface (что можно приблизительно перевести как "Интерфейс программирования для приложений"). Так вот, функции API - это просто функции самой операционной системы. Какие же там есть функции? А всякие разные. Для всего, что умеет операционная система, есть некая API-функция (одна или несколько). Например, Windows умеет создавать окна. И для этого есть функция API, которая называется CreateWindow. Windows умеет запускать программы. Для этого есть API-функция ShellExecute. Windows умеет выключаться. И для этого тоже существует API-функция ExitWindows.

Итак, самое главное, что Вы должны понять про API-функции, это то, что они являются функциями самой операционной системы Windows.

Так, что если Вы только установили на голый компьютер Windows, то Вы тем самым имеете уже все API-функции. Ничего дополнительно устанавливать не надо. Они там существуют и без всякого Visual Basic'а или Visual C++.

Теперь ещё один вопрос, который у Вас может естественно возникнуть: "А зачем мне, собственно, эти API-функции изучать? Я и так классный программист на Visual Basic'е".

Ответ такой - не всего, что Вам надо в Вашей программе, Вы можете достигнуть средствами только Visual Basic'а. Например, Вам надо для сохранителя экрана сделать курсор невидимым. Как этого добиться? Средствами Visual Basic этого сделать нельзя. Или еще пример. Вы пишете программу установки. Часть файлов при установке должна быть записана в системную директорию Windows. На Вашем компьютере это, скажем, папка C:\Windows\system. А на компьютере клиента эта папка уже другая - что-то вроде C:\win98\system. А на компьютере другого клиента Windows вообще установлена на диске D:. И как Вам поступить? Можно конечно запрашивать эту информацию в процессе установки у пользователя , но лучше, если Ваша программа сама сумеет все правильно определить.

И ещё одно замечание. Так как API-функции - это функции самой операционной системы, то они, в общем-то, не зависят от использующего их языка. Т. е. Вы эти же самые API-функции можете применять и в программах на Visual Basic'е, и в программах на Delphi и т. д.

А сколько же API-функций существует? Этого никто точно не знает (даже в Microsoft). Почему? Потому что API-функции находятся в разных DLL'ках, а вот относится ли та или иная DLL к Windows или нет - это вопрос сложный. Некоторые dll-файлы точно относятся к Windows, и, соответственно находящиеся в них функции точно надо подсчитывать, а некоторые фактически входят в Windows, но формально - нет. Подсчитывать ли при этом функции, входящие в dll-файлы или нет - дело вкуса. Что же до конкретных цифр, то более-менее стандартная цифра - это около двух тысяч функций .

Внимание!

В написании имён API-функций важен регистр букв. Чистый Visual Basic не различает прописные и строчные буквы, но при использовании API-функций прописные и строчные буквы различаются.

Теперь приступаем к практическому применению API-функций в Ваших программах.

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

А где мне взять справку по API-функциям?

Ну, где угодно. Например, с продуктами фирмы Borland (бывшая Inprise) C++ Builder'ом или с Delphi поставляется файл справки win32.hlp. В нем всё есть (правда на английском языке). Аналогично для Visual Basic'а или для Visual C++ необходимую справку можно найти в MSDN. Правда, она довольно-таки объёмная, но при желании там тоже всё можно найти.

Или купить книгу Дана Эпплмана Win32 API и Visual Basic (Издательство Питер, 2001 г.). В ней более 1000 страниц, так что будет что почитать перед сном ;).


© Ушку ду Кашку

hidden/visible

Hosted by uCoz