Работа с API функциями (GetKeyboardLayoutList)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Aleksander
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.05.2004 (Пн) 12:07

Работа с API функциями (GetKeyboardLayoutList)

Сообщение Aleksander » 24.05.2004 (Пн) 12:22

Привет

Вопрос косается использования АПИ функций.
Есть функция, которая возвращает список текущих раскладок для клавиатуры.
Private Declare Function GetKeyboardLayoutList& Lib "user32" (ByVal nBuff As Long, lpList As Long)

nBuff - входной параметр
lpList - выходной - содержит указатель на буфер, в котором будет требуемый список

Как прочитать содержимое полученного буфера ? Вернее даже как в принципе работать с указателями в VB ?.

Vi
Постоялец
Постоялец
 
Сообщения: 739
Зарегистрирован: 25.01.2002 (Пт) 11:03
Откуда: Россия, Ижевск

Сообщение Vi » 25.05.2004 (Вт) 6:19

Код: Выделить всё
Private Declare Function GetKeyboardLayoutList Lib "user32" _
  (ByVal nBuff As Long, ByRef lpList As Long) As Long

Private Sub Form_Load()
  Dim keyList() As Long, nkeyList As Long, i As Long
 
  nkeyList = GetKeyboardLayoutList(0, 0)
 
  ReDim keyList(nkeyList)
  Call GetKeyboardLayoutList(nkeyList, keyList(0))
 
  For i = 0 To nkeyList - 1
    Debug.Print Hex(keyList(i))
  Next
End Sub
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! (с) КВН

Aleksander
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.05.2004 (Пн) 12:07

Сообщение Aleksander » 25.05.2004 (Вт) 8:52

Привет

Ок, спасибо, все прекрасно работает.

Александр.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 33

    TopList  
cron