На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
  
> Как сообщить системе об изменении в реестре?
    Меняю ключ реестра:

    [HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard Response]
    "Flags"="122"

    (это специальные возможности, способ включения фильтрации ввода)

    Но изменение начинает работать только после перезагрузки. А мне надо, чтобы сразу. И чтобы потом вернуть всё как было :D

    Как этого добиться? Ведь если менять настройку из панели управления, изменение действует сразу.
      Вопрос решён вот здесь:
      http://bbs.vbstreets.ru/viewtopic.php?p=6711347#p6711347

      Удалось-таки обойтись без записи в реестр - изменения настроек происходят, но не сохраняются (если, конечно, не установить специальный флаг):

      ExpandedWrap disabled
        'модуль SystemInfo
        Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" ( _
                          ByVal uAction As Long, _
                          ByVal uParam As Long, _
                          lpvParam As Any, _
                          ByVal fuWinIni As Long) As Long
        Public Type STICKKYKEYS
           cbSize As Long
           dwFlags As Long
        End Type
         
        Public Const SKF_HOTKEYACTIVE = 4
        Private Const SPI_GETSTICKYKEYS = 58
        Private Const SPI_SETSTICKYKEYS = 59
         
        Property Get stickkyKeysInf() As STICKKYKEYS
          stickkyKeysInf.cbSize = Len(stickkyKeysInf)
          SystemParametersInfo SPI_GETSTICKYKEYS, stickkyKeysInf.cbSize, stickkyKeysInf, 0&
        End Property
        'typedef struct tagSTICKYKEYS {
        '    DWORD  cbSize;
        '    DWORD  dwFlags;
        '} STICKYKEYS, *LPSTICKYKEYS;
         
        Property Let stickkyKeysInf(st As STICKKYKEYS)
          st.cbSize = Len(st)
          SystemParametersInfo SPI_SETSTICKYKEYS, st.cbSize, st, 0&
        End Property


      Использование:
      ExpandedWrap disabled
        Private Sub setStickkyKeysHotKeyActive(YesNo As Boolean)
          
            Dim st As STICKKYKEYS
          
            st = SystemInfo.stickkyKeysInf
         
          If YesNo Then
            st.dwFlags = st.dwFlags Or SKF_HOTKEYACTIVE
          Else
            st.dwFlags = st.dwFlags And (Not SKF_HOTKEYACTIVE)
          End If
            SystemInfo.stickkyKeysInf = st
        End Sub

      Это - использование и отключение испования пятикратного нажатия шифта для залипания клавиш. Для фильтрации ввода код практически такой же :)
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0660 ]   [ 16 queries used ]   [ Generated: 5.12.23, 04:40 GMT ]