Лекция: API Интерфейс Windows на примере Visual Basic ver 6.0

В операционной системе Windows 32x для выполнения системных действий тприкладная программа должна использовать специальный интерфейс API. API Windows это набор функций к которым может обращаться программа. Чтобы использовать такую функцию в программе нужно выполнить следующую последовательность действий:

Кнопка «Пуск» > Microsoft Visual Studio 6.0>

Microsoft Visual Studio 6.0 Tools >API Text Viewer.

В результате загружается окно браузера API функций.

Рис.7.1. Окно API браузера

Для возможности использования API функций нужно загрузить текстовую базу данных их описаний:

File > Load Text File > WIN32API.TXT

Затем отыскивается нужная функция, и ее текст копируется в буфер обмена. При вводе функции нужно задать название полностью или ввести несколько первых символов из названия. На рисунке показан поиск функции GetWindowsDirectory. Для работы с функциями используются кнопки Add (получить текст функции), Remove(удалить текст), Clear(уничтожение найденных описаний), Copy(копирование описаний функций в буфер обмена). Описание функции можно получить с глобальным атрибутом (Public) либо с закрытым (Private).

Общая структура программы:

API функция помещается в модуль программы. Обращение выполняется из требуемой формы программы.

Пример №1. Определение каталога Windows

Модуль.

Declare Function GetWindowsDirectory _

Lib «kernel32» Alias «GetWindowsDirectoryA» _

(ByVal lpBuffer As String, ByVal nSize As Long) As Long

Событийный код.

Private Sub Command1_Click()

Dim progr As String

Dim WindowsDirectory As String

'заполнить шаблон пробелами

WindowsDirectory = Space(144)

'получить каталог

result = GetWindowsDirectory(WindowsDirectory, 144)

'проверить результат

If result = 0 Then

MsgBox «Не могу найти каталог Windows», vbCritical, _

«Информация»

Else

WindowsDirectory = Trim(WindowsDirectory)

n = Len(WindowsDirectory)

progr = ""

'Преобразовать ASCIIZ строку

For i = 1 To n — 1

progr = progr + Mid(WindowsDirectory, i, 1)

Next

MsgBox progr

End Sub

Пример №2. Окно «О программе».

'API функции вызова системного окна

Declare Function ShellAbout Lib «shell32.dll» Alias _

«ShellAboutA» (ByVal hwnd As Long, ByVal szApp As String, _

ByVal szOtherStuff As String, ByVal hIcon As Long) As Long

В окне три строки свободны.

'Функция формирования окна «О программе»

Sub WinAboutShow(frm As Form)

Dim MoreInfo As String

MoreInfo = " " + Chr(169) + «МосГУ» + Chr(13)

MoreInfo = MoreInfo + «Тест API Windows „

Call ShellAbout(frm.hwnd, App.Title, MoreInfo, frm.Icon)

End Sub

Вызов функции:

WinAboutShow Me

 

Рис.7.2.Окно о программе.

еще рефераты
Еще работы по информатике