На главную Наши проекты:
Журнал   ·   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.
  
> mouse_event не работает в Windows 10
    В WinXP работает, в Win10 - нет. В чём проблема?

    Тест: Кнопка+Таймер. Кликаем на кнопке, мышь не уводим.

    ExpandedWrap disabled
      Private Const MOUSEEVENTF_LEFTDOWN = &H2 '  left button down
      Private Const MOUSEEVENTF_LEFTUP = &H4 '  left button up
      Private Const MOUSEEVENTF_ABSOLUTE = &H8000 '  absolute move
      Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
       
      Private NumClick As Long
       
      Private Sub Command1_Click()
          Timer1.Interval = 1000
          NumClick = NumClick + 1
          Command1.Caption = CStr(NumClick)
      End Sub
       
      Private Sub Timer1_Timer()
          mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_ABSOLUTE, 0, 0, 0, 0
          mouse_event MOUSEEVENTF_LEFTUP Or MOUSEEVENTF_ABSOLUTE, 0, 0, 0, 0
      End Sub
      Поди прав/привилегий не хватает
        Это такая страшная ф-я, требует особых привелегий? Учётная запись - администратор. Я не инсталлировал VB на Win10, но это не должно влиять.
          mouse_event нынче не рекомендуется, вместо неё SendInput, так вот для последней функции явно прописано, что она подчиняется User Interface Privilege Isolation (UIPI) (а для первой, демаю, просто не правили msdn).
            SendInput это ф-я из C++?
              Это функция Windows API
                не вижу её в API Viewer, зато mouse_event имеется.
                  Нашёл таки какую-то инфу по ней в сети, какая-то она мудрёная. Есть смысл mouse_event на неё менять, может ей тоже права да привилегии подавай?
                    Код-то работает в Win10 или все на XP сидят?
                      у меня работает
                      Прикреплённый файлПрикреплённый файлmouse.zip (7,07 Кбайт, скачиваний: 276)
                      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                      0 пользователей:


                      Рейтинг@Mail.ru
                      [ Script execution time: 0,0296 ]   [ 18 queries used ]   [ Generated: 28.03.24, 22:19 GMT ]