Информация
Настройка
Новости
Контакты
Новинка
Распродажа
Оплата
Доставка
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    API в Visual Basic 6 работает отлично!

    API в Visual Basic 6 работает отлично!

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    API в Visual Basic 6 работает отлично!, RouterOS
     
    lucho512
    Guest
    #1
    0
    09.05.2011 16:52:00
    Привет, форум! После долгих поисков я наконец-то нашёл пример работы с API на VB6, который выложил Royce3. Мне пришлось немного подправить код, чтобы он заработал нормально. Оставляю это здесь, чтобы вы могли попробовать — ведь в VB6 вообще сложно найти что-то для работы с API. Надеюсь, это будет полезно. Делитесь своими успехами, я продолжаю работать! Всем привет!  

     

    MKT API Test.rar (11.4 KB)
     
     
     
    lucubrb
    Guest
    #2
    0
    05.11.2011 15:06:00
    ip - сервис, ты включил API? Я использовал ros 5.8, и всё работает отлично. Отличная работа, TS.
     
     
     
    inibir
    Guest
    #3
    0
    06.09.2011 07:32:00
    Не работает, он возвращает это сообщение (Подключение) ws_Error: Соединение принудительно отвергнуто.
     
     
     
    normis
    Guest
    #4
    0
    06.09.2011 08:55:00
    Ты включил API на RouterOS?
     
     
     
    inibir
    Guest
    #5
    0
    08.09.2011 19:28:00
    Потребовалось 9 месяцев, чтобы попытаться это исправить, я знал, что нужно сделать, чтобы включить API, спасибо, Normis.
     
     
     
    kurei
    Guest
    #6
    0
    10.10.2011 08:48:00
    РАБОТАЕТ ИДЕАЛЬНО!!! Я изучал Java и VB.NET, но, думаю, я всё ещё люблю эти классические вещи. Провёл год, создавая API на Visual Basic, но ничего не получилось.
     
     
     
    DorisLam
    Guest
    #7
    0
    12.04.2012 12:16:00
    Скрипт у меня работает нормально, API включено, и я могу войти в роутер. Когда я нажимаю SEND, вижу те же результаты. Проблема в том, что когда я нажимаю SEND снова, получаю СТАРЫЙ результат плюс новый. Я очистил текстовое поле перед нажатием SEND (txtout.text = “”), но проблема осталась. Кажется, буфер не очищается после выполнения команды. Думаю, дело в переменной inbuf1. Спасибо за помощь.
     
     
     
    ax045Y
    Guest
    #8
    0
    21.04.2012 20:33:00
    Этот скрипт корректно работает на версии 5.12?
     
     
     
    lucho512
    Guest
    #9
    0
    21.04.2012 23:01:00
    Да, всё отлично работает!!!
     
     
     
    ax045Y
    Guest
    #10
    0
    24.04.2012 18:25:00
    Что не так с моим? При компиляции для создания .exe файла выдает ошибку.
     
     
     
    ditonet
    Guest
    #11
    0
    24.04.2012 20:55:00
    @ax045Y Не используйте Package and Deployment Wizard для компиляции проекта, вместо этого используйте команду VB6 IDE «File/Make…». В таком случае компилятор покажет, что именно и где не так с кодом. Этот пример с API работает нормально, проблема в функции «CRAM_MD5» в «MD5.cls». Уберите эту функцию — и вы сможете скомпилировать этот пример в .EXE. Надеюсь, поможет.
     
     
     
    ax045Y
    Guest
    #12
    0
    26.04.2012 10:21:00
    Спасибо. В любом случае у меня новая проблема. Какая команда нужна, чтобы включить пользователя? Хмм, так этот API может выполнять только однострочные команды?
     
     
     
    bastakboys
    Guest
    #13
    0
    09.10.2012 05:39:00
    У тебя есть исходники на VB.NET?
     
     
     
    amongdota
    Guest
    #14
    0
    22.08.2013 09:31:00
    Спасибо, lucho512, отличная работа, Doris. У меня была такая же проблема, и спустя несколько часов я изменил этот Private Sub ws_DataArrival(ByVal sent$)
    .
    .
    .
    end sub на этот Private Sub ws_DataArrival(ByVal bytesTotal As Long)
       If bErr Then Exit Sub
       Dim ar() As Byte, i&
       ReDim ar(0 To bytesTotal - 1)
       ws.GetData ar, vbByte, bytesTotal
       On Error Resume Next
       Err.Clear
       On Error GoTo 0
       inbuf1 = ar
       Dim WordLen&, StartIdx&, Idx&
       StartIdx = 0
       Do While True
           Idx = StartIdx
           WordLen = CalcWordLen(inbuf1, Idx)
           If WordLen < 0 Then
               Exit Do
           End If
           If WordLen = 0 Then
               SentenceArrived (inbuf2)
               inbuf2 = ""
           Else
               If inbuf1(Idx) = Asc("=") Then
                   inbuf2 = inbuf2 & " "
               End If
               For i = 0 To WordLen - 1
                   inbuf2 = inbuf2 & Chr(inbuf1(Idx + i))
               Next
           End If
           StartIdx = Idx + WordLen
       Loop
    End Sub — это решило мою проблему. И для лучшего вида изменил это: Private Sub SendCommand(ByVal sCmd$)
    .
    .
    .
    End Sub на вот это Private Sub SendCommand(ByVal sCmd$)
       Dim ar$(), i&, buf() As Byte
       Out Replace(sCmd, " ", vbCrLf)
       ar = Split(sCmd, " ")
       For i = 0 To UBound(ar)
           EncodeWord buf, ar(i)
       Next
       EncodeWord buf, ""
       If ws.State = sckConnected Then ws.SendData buf
    End Sub  
    Я работаю с VB API, чтобы создавать и управлять пользователями hotspot, потому что в user manager максимальное количество активных сессий для lvl4 — 20, лучше использовать /ip/hotspot, чем /tool/user-manager. В hotspot активных пользователей может быть до 200. Ждите мой следующий ответ с полным VB-кодом для создания пользователя. Извиняюсь за мой плохой английский, это мой первый пост.
     
     
     
    amongdota
    Guest
    #15
    0
    22.08.2013 09:53:00
    нет, ты можешь изменить пробел в строке, и почитать про запросы API здесь http://wiki.mikrotik.com/wiki/API#Query_word
     
     
     
    drprotic
    Guest
    #16
    0
    22.02.2014 14:05:00
    ax045Y написал: спасибо... в любом случае у меня новая проблема. Какая команда нужна, чтобы включить пользователя? Хмм, так этот API может выполнять только однострочные команды? Нет, можно менять пробелы в строке, и почитай про API-запросы здесь http://wiki.mikrotik.com/wiki/API#Query_word Это работает: /ip/hotspot/user/add O =name=user1 O =password=111 O =limit-uptime=00:01:00
     
     
     
    drprotic
    Guest
    #17
    0
    22.02.2014 21:10:00
    Попробуйте так: /ip/hotspot/user/add O=name=user1 O=password=111 O=limit-uptime=00:01:00
     
     
     
    edilsonlsouza
    Guest
    #18
    0
    05.08.2014 17:05:00
    Привет! В этой программе какая команда используется, чтобы отключить устройство, подключённое по IP, и как его добавить?
     
     
     
    edilsonlsouza
    Guest
    #19
    0
    05.08.2014 17:18:00
    Привет! Используя эту программу, какая команда удаляет подключение по IP и как его добавить? Спасибо!
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2025 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры