Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)

Модерирует : gyra, Maz

Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

AutoIt3
(Часть 1)

 
 
Домашняя страница: http://www.autoitscript.com
Страница загрузки: http://www.autoitscript.com/autoit3/downloads.php
 
Описание:

Цитата:
AutoIt v3 - это язык для написания сценариев, напоминающий BASIC. Основным его назначением является автоматизация работ с Windows GUI (графическим интерфейсом пользователя MS Windows). Для выполнения этой сложной задачи предоставляется комбинация испытанных методов, включающих в себя эмуляцию нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами. Как показывает практика, эти "приводные ремни" весьма эффективны для получения работающих решений в ситуациях, когда другие стандартные средства (например, VBScript и SendKeys) оказываются бессильны.
Умеет он очень и очень многое! Бесплатный.

 
Помощь по AutoIT:
  • Справку на русском (и не только) вы всегда(?) сможете найти тут
  • Учебник по AutoIt для начинающих
  • Видео-руководства на YouTube (англ.)
  • AutoIt v3: Your Quick Guide (652 КБ) - Ваш быстрый гид в мир AutoIt-а (книга в формате pdf) - Та же книжка online.
  • Справочник по командам rundll32
  • Справка WinAPI (Win 32 API по шагам)
  • Русский справочник по API-функциям
  • Полезная информация по WinAPI на русском
  • Помощь по регулярным выражениям
  • Tutorial on DllCall() & DllStructs - Небольшое (пока?) руководство по использованию функции DllCall*()
     
     
    Ресурсы, посвящённые AutoIt
  • AutoIt в Википедии
  • AutoIt Russian Community - Русское сообщество AutoIt
  • Jabber-конференция для обсуждения мелких вопросов касающихся AutoIt
  • Обзор скриптового языка AutoIt (рус.)
  • AutoIt на Yahoo! Groups
  • Раздел в конфиренции OSzone.net, посвящённый AutoIt
  • Пополняющийся со временем сайт с полезными утилитами и функциями на AutoIt
  • Коллекция AutoIt-скриптов от Sanja Alone
  • Коллекция AutoIt-скриптов от MSFN (могут быть устаревшие).
  • Коллекция AutoIt-скриптов от AZJIO
     
     
    !!! Полезные советы и заметки - новичкам и не только
     
     
  • Рекомендации по написанию скриптов
     
     
    Инструменты для AutoIt:
  • AutoIt Path Switcher - Переключение пути к папке AutoIt.
  • AutoIt3Wrapper [Страница закачки] - Программа для компиляции скрипта с дополнительными возможностями (добавление значка, описания и т.п).
  • Koda (724 Kb) - Визуализация работы с GUI - аналог Visual Basic.
  • CodeWizard (400 Kb) - нечто простенькое на вариант Koda.
  • AutoItMacroGenerator (34 Kb) - Записывает в реальном времени действия пользователя в AutoIt-код.
  • ScriptWriter (78 Kb) - Аналог AutoItMacroGenerator.
  • API Constants (1042 Kb) - Утилита для просмотра всех констант API-функции и не только.
  • Страница закачки утилит, которые идут в отдельной поставке редактора SciTE.
  • AutoIt-меню для браузера Opera.
     
    Готовые скрипты и программы с открытым кодом на AutoIt:
  • Desktop Icons Restorator - Скрипт-программа для сохранения/восстановления позиции значков рабочего стола.
  • CaptureIt - Утилита для захвата изображений с экрана.
  • SwitchIt - Скрипт для конвертирования выделенного текста.
  • Скрипт раскраски кода AutoIt для публикации в форумах
     
    Общие вопросы и решения на Autoit:
  • Обработчик скриптов добавляющий отладчик (debugger) - Последняя версия: AutoItScript Add Debugger
  • Интеракция между несколькими скриптами
  • Пример использование интеракции между скриптами - Добавление элементов GUI с внешнего модуля
  • Чтение и запись данных с/в окна/о SciTE
  • Пример автообновления версии своего приложения
  • Копирование большого файла с отображением данных прогресса
  • Создание динамического меню в Tray Icon (значок в области уведомлений)
  • Пример создания своего мастера (Wizard)
  • Метод, позволяющий запускать код VBS без создания временных файлов
  • Описание функции GUIRegisterMsg()
  • Пример перехвата вводимых символов с клавиатуры
  • Пример деактивирования TabItem
  • Пример вывода лога в Edit-поле (с поддержкой форматирования текста)
  • Пример остановки/начало выполнения скрипта + Слежение за буфером обмена с заменой неподдерживаемых в имени файла символов
  • Подключение приложения (GUI) к буферу обмена
  • Пример использования меню с значками (ModernMenu.au3) -> Список программ в меню значка в системном трее
  • Пример подсчёта интервала времени между нажатиями клавиш
  • Слежение нажатых элементов в текущем окне (под курсором)
  • Написание instant messaging Бота на AutoIt
  • Способ, позволяющий посылать нажатие клавиши в неактивное окно (не путать со свёрнутым)
  • Сервер <=> Клиент - Пример передачи файла
  • Пример отображения только элементов GUI (без самой оболочки)
  • Модуль, превращающий ваше приложение в Trial-версию
  • Слежение за выделенным текстом и с последующим его помещением в файл
     
    Отдельные функции и библиотеки (UDF):
  • Функции, относящиеся к интернету
  • Функции для работы с процессами и окнами
  • Функции для работы с файлами
  • Функции для GUI/Tray
  • Системные функции
  • Разное (то, что не подпадает под другие категории)
     


     
    За шапкой следит ViSiToR  

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 14:47 12-01-2009 | Исправлено: Maz, 11:50 17-04-2017
    arr1val

    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ViSiToR
    Не копировать - перемещать.

    Всего записей: 43 | Зарегистр. 01-02-2008 | Отправлено: 14:46 13-02-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    arr1val 14:46 13-02-2009
    Цитата:
    Не копировать - перемещать

    Ну так удалите потом нужные каталоги в исходной папке

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 18:51 13-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    arr1val

    Цитата:
    А про стандартные средства все равно не пойму. МОжешь привести пример, допустим, искать *.doc на д а все найденное с сохранением иерархии папок мувить в другое место ?

     
    немного переделав "шапочный" пример поиска папок:
    Подробнее...
    можно использовать коммандную строку для передачи параметров и запуска в скрытом виде (тогда пути заключай в кавычки "d:\")
     
    Добавлено:

    Цитата:
    про логирование дотюхал  Спасибо!

    эт надо Мазе Факера благодраить - его пример ..

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 19:15 13-02-2009 | Исправлено: sproxy, 19:22 13-02-2009
    Re0g

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    наслаждайся )) :

    Большое спасибо.  
    Если можно ещё вопрос как добавить к этому GUI ещё такие функции:

    Код:
     
    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    #include <WindowsConstants.au3>
    #include <Constants.au3>
    #NoTrayIcon
     
    Opt("TrayMenuMode", 1)
     
    $nMain = GUICreate("CD Eject", 282, 300, -1, -1, $WS_SIZEBOX, $WS_EX_CONTEXTHELP)
    GUISetIcon("Main.ico")
     
    GUICtrlCreateLabel("Выбор привода:",  10, 10, 85, 15)
    GUICtrlCreateLabel("Горячие клавиши:",  10, 40, 95, 15)
     
    $nBtn1 = GUICtrlCreateButton ("Открыть/закрыть CD", 10, 241, 80, 28, $BS_MULTILINE)
    $nBtn2 = GUICtrlCreateButton ("Скрыть", 100, 241, 80, 28)
    $nBtn3 = GUICtrlCreateButton ("Выход",  190, 241, 80, 28)
     
    $nRom = GUICtrlCreateCombo("", 105, 7, 100)
    $nHotkey = GUICtrlCreateCombo("", 105, 37, 100)
     
    $nSettings = TrayCreateItem("Настройки")
    TrayCreateItem("")
    $nOpenrom = TrayCreateItem("Открыть/закрыть CD") ; Может быть больше строк в зависимости от колличества приводов.
    TrayCreateItem("")
    $nExit = TrayCreateItem("Выход")
     
    TraySetState()
     
    While 1
        $msg = TrayGetMsg()
        Select
            Case $msg = 0
                ContinueLoop
            Case $msg = $nSettings
                _GUI()
            Case $msg = $nExit
                ExitLoop
        EndSelect
    WEnd
     
    Func _GUI()  
        $msg = $nMain
            GUISetState()
    EndFunc
     

     
    Кнопку открыия\закрытия текущего латка, кнопку для сворачивания диалога и кнопку выхода, а в трей меню возможность открыия\закрытия латков.

    Всего записей: 119 | Зарегистр. 13-10-2008 | Отправлено: 19:28 13-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Re0g

    Цитата:
    Если можно ещё вопрос как добавить к этому GUI ещё такие функции:

     
    можно так:
    Подробнее...
     
    Добавлено:
    Re0g
    кстати, вот готовое решение CD-ROM trey & hot-key toolsss

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 20:28 13-02-2009
    Re0g

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    можно так:

    Снова большое спасибо, буду разбираться.

    Всего записей: 119 | Зарегистр. 13-10-2008 | Отправлено: 20:59 13-02-2009
    Belfigor au3



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Разрешите спросить, как с помощью AutoIt получить и вывсети на экран данные о памяти процесса и вывести их на экран?

    Всего записей: 20 | Зарегистр. 14-02-2009 | Отправлено: 03:05 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Belfigor au3

    Цитата:
    Разрешите спросить, как с помощью AutoIt получить и вывсети на экран данные о памяти процесса и вывести их на экран?

    пример:
    Подробнее...
     
    - а вот его оригинал
     
    Добавлено:
    Belfigor au3
     
    - приставка к нику зачетная =ъ
     
    Добавлено:
    можно ускорить процесс, если в функции _ProcessListProperties оставить выборку только памяти процесса,
    да и в самом начале строить список не всех имеющихся процессов. а только нужного....

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 09:40 14-02-2009
    Re0g

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sproxy, можно ли ещё добавить в то что уже слелано функции из программы которую ты привёл.

    Код:
    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    #include <WindowsConstants.au3>
    #include <Constants.au3>
    #NoTrayIcon
     
    Opt("TrayMenuMode", 1)
     
    $nMain = GUICreate("CD Eject", 282, 300, -1, -1, $WS_SIZEBOX, $WS_EX_CONTEXTHELP)
    GUISetIcon("Main.ico")
     
    GUICtrlCreateLabel("Выбор привода:", 10, 10, 85, 15)
    GUICtrlCreateLabel("Горячие клавиши:", 10, 40, 95, 15)
    GUICtrlCreateLabel("Мышь:", 10, 70, 95, 15)
    GUICtrlCreateLabel("секунд", 195, 180, 50, 15)
     
    $nBtn1 = GUICtrlCreateButton ("Открыть/закрыть CD", 10, 241, 80, 28, $BS_MULTILINE)
    $nBtn2 = GUICtrlCreateButton ("Скрыть", 100, 241, 80, 28)
    $nBtn3 = GUICtrlCreateButton ("Выход", 190, 241, 80, 28)
    $nBtn4 = GUICtrlCreateButton('Задать', 211, 35, 60, 23)
     
    $nRom = GUICtrlCreateCombo("", 105, 7, 100)
    $nHotkey = GUICtrlCreateCombo("", 105, 37, 100)
    $nMouse = GUICtrlCreateCombo("2 левой", 105, 67, 100)
    GUICtrlSetData(-1, "1 левой|2 средней|1 средней|2 правой", "")
     
    $nCheck1 = GUICtrlCreateCheckbox("Заблокировать привод", 10, 100, 140, 15)
    $nCheck2 = GUICtrlCreateCheckbox("Автозапуск программы", 10, 120, 140, 15)
    $nCheck3 = GUICtrlCreateCheckbox("Извлекать диск при выключении", 10, 140, 185, 15)
    $nCheck4 = GUICtrlCreateCheckbox("Автозапуск CD", 10, 160, 185, 15)
    $nCheck5 = GUICtrlCreateCheckbox("Закрыть латок через", 10, 180, 130, 15)
     
    $nInput = GUICtrlCreateInput("30", 140, 178, 50, 20)
    $nUpdown = GUICtrlCreateUpdown($nInput)
     
    $nOpenrom = TrayCreateItem("Открыть/закрыть CD") ; Может быть больше строк в зависимости от колличества приводов.
    TrayCreateItem("")
    $nExp = TrayCreateItem("Открыть в проводнике")
    $nSettings = TrayCreateItem("Инфо о диске")
    TrayCreateItem("")
    $nSettings = TrayCreateItem("Настройки")
    TrayCreateItem("")
    $nExit = TrayCreateItem("Выход")
     
    TraySetState()
     
    While 1
        $msg = TrayGetMsg()
        Select
            Case
    $msg = 0
                ContinueLoop
            Case
    $msg = $nSettings
                _GUI()
            Case $msg = $nExit
                ExitLoop
        EndSelect
    WEnd
     
    Func
    _GUI()
        $msg = $nMain
            GUISetState()
    EndFunc

    И ещё, чтобы менялась в трее иконка если диск вставлен. Спасибо.

    Всего записей: 119 | Зарегистр. 13-10-2008 | Отправлено: 14:44 14-02-2009 | Исправлено: Re0g, 14:45 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Re0g
    ..."автозапуск cd" что делает?

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 15:52 14-02-2009
    Re0g

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    ..."автозапуск cd" что делает?

    Отключение автозапуска дисков при вставке в привод (авторан).

    Всего записей: 119 | Зарегистр. 13-10-2008 | Отправлено: 16:37 14-02-2009
    Belfigor au3



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sproxy
     
    Спасибо! Буду эксперементировать

    Всего записей: 20 | Зарегистр. 14-02-2009 | Отправлено: 17:26 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ..перебераю пример, что выше постил, нашел что писал, уже сонный:
     

    Код:
    $n = 1
    For $i = 1 to 29
        $cdrom_key_id[$i] = $n
        $n
    += 1
    Next

     
    ...очень......смешной.....код.....)))))))

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 20:20 14-02-2009
    Belfigor au3



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А еще такой вопрос к знатокам:
    Я имею код:
     

    Код:
     
    $CurrentNum = (_MemoryRead(0x08747DEC, $DllInformation, 'ptr'))
     
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to read memory.")
        Exit
    EndIf
     
     
    $dec = dec("00000064")
    MsgBox(0, "Данные", "HP:" & $dec)
     

    Первая строка записывает в переменную CurrentNum hex значение в виде: 0х000000064
    команда dec преобразовывает хекс в дек, но она работает только если там будет не сам результат который я получаю а только последние 8 знаков, тоесть '00000064'. Мне же нужно узнать dec значение, но на те данные которые я получаю она не работает. как мне отбросить первые 2 знака в переменной $CurrentNum?
     
     
    P.S. как постить цветной текст как в постах выше? Неужели ручками все раскрашивать? :'(
     
    P.S.S. Я так подозреваю что нужно превратить переменную в String и обрезать 2 левых знака, или же 8 правых перенести в другой String, но у меня со Stringами очень плохо , сижу пытаюсь щас через хельп решить свою проблему, надеюсь на вашу помощь
     
    P.S.S.S проблему решил применив  

    Код:
    $dec = StringTrimLeft($CurrentNum, 2)

     
    Если есть более действенные способы то подскажите

    Всего записей: 20 | Зарегистр. 14-02-2009 | Отправлено: 20:36 14-02-2009 | Исправлено: Belfigor au3, 20:45 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Belfigor au3

    Цитата:
    $dec = StringTrimLeft($CurrentNum, 2)

    good решение )
     

    Цитата:
    P.S. как постить цветной текст как в постах выше? Неужели ручками все раскрашивать? :'(

    неее, проще: благодарить Визитора
    п.с.: в шапке жирным синим выделенно )))))))

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 21:23 14-02-2009
    Belfigor au3



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    О! Шик огромное спасибо, скрипт полезный, спасибо и Визитору и тебе за то что указал где смотреть
     
    У меня появился еще 1 вопрос, я хочу создать примитивнейшее GUI
     
    Вот что у меня есть сейчас:

    Код:

    Код:
    #include <GUIConstantsEx.au3>
    $BotVersion = "0.04"
    Global $GUITitle = "AO Bot v" & $BotVersion
    $i
    = 1
    TestGUI()
    Func TestGUI()
    GUICreate($GUITitle, 200, 200, 0, 0)
    GUISetState(@SW_SHOW)
    While 1
        $msg = GUIGetMsg()
        If $msg = $GUI_EVENT_CLOSE Then ExitLoop
     
    WEnd

    GUIDelete()
    EndFunc

     

     
    Я пытаюсь сделать так чтобы получаемое мной из памяти значение отображалось на этом гуи в риальном времени, тоесть я из памяти каждые пол секунды получаю значение и записываю его в переменную $CurrentNum, а как мне сделать чтобы оно появилось в гуи и каждые пол секунды там обновлялось в соответствии с новыми данными?

    Всего записей: 20 | Зарегистр. 14-02-2009 | Отправлено: 21:31 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Belfigor au3
    паааапробуй так:
     

    Код:
    #include <GUIConstantsEx.au3>
    #Include <Timers.au3>
     
    $BotVersion = "0.04"
    Global  $GUITitle = "AO Bot v" & $BotVersion
    Global  $win_main, $mem_label
     
    $i
    = 1
    TestGUI()
     
    Func TestGUI()
        $win_main = GUICreate($GUITitle, 200, 200, -1, -1)
        $mem_label = GUICtrlCreateLabel('11', 15, 25, 150, 20)
        GUISetState(@SW_SHOW)
     
        _Timer_SetTimer($win_main, 500, '_Update_mem')
     
        While 1
            $msg = GUIGetMsg()
            If $msg = $GUI_EVENT_CLOSE Then ExitLoop
        WEnd

     
        GUIDelete()
    EndFunc
     
    Func
    _Update_mem($hWnd, $Msg, $iIDTimer, $dwTime)
        GUICtrlSetData($mem_label, StringFormat("%02d:%02d:%02d", @HOUR, @MIN, @SEC))
    EndFunc

     
    Добавлено:
    _Timer_SetTimer($win_main, 500, '_Update_mem')
    Устанавливается таймер на 500 милисек (0,5 сек), по истичении которых вызывается функция _Update_mem
     
    Добавлено:

    Цитата:
    указал где смотреть

    ...ну эт дело наживное.
     
    Кстати, если пользуешься руусской справкой по AutoIT, то иногда (правда мало таких функций), данные по функциям в русской редакции устарели, и конечно же в английской редакции все ок - иногда стоит в неё заглядывать

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 22:47 14-02-2009
    Belfigor au3



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Пользую обе, сейчас буду эксперементироваьт с Гуи, спасибо
     
    Добавлено:
    Вот, пытаюсь подправить глючность:
     

    Код:
    [code]#include <nomadmemory.au3>
    #include <GUIConstantsEx.au3>
    #Include <Timers.au3>
     
     $AllodsProcessName = "MMO A1"
     
    $ProcessID = WinGetProcess($AllodsProcessName,"")
    SetPrivilege("SeDebugPrivilege", 1)
    If $ProcessID = -1 Then
        MsgBox(4096, "Thermo Prime - ERROR", "Failed to detect World of Warcraft running.")
        Exit
    EndIf

     
    $DllInformation = _MemoryOpen($ProcessID)
            If @Error Then
                MsgBox(4096, "ERROR", "Failed to open memory.")
                Exit
            EndIf

     
    $BotVersion = "0.04"
    Global  $GUITitle = "AO Bot v" & $BotVersion
    Global  $win_main, $mem_label
     
    $i
    = "1"
    TestGUI()
     
    Func TestGUI()
        $win_main = GUICreate($GUITitle, 200, 200, -1, -1)
        $mem_label = GUICtrlCreateLabel('11', 15, 25, 150, 20)
        GUISetState(@SW_SHOW)
     
        _Timer_SetTimer($win_main, 500, '_Update_mem')
     
        While 1
            $msg = GUIGetMsg()
            If $msg = $GUI_EVENT_CLOSE Then ExitLoop
        WEnd

     
        GUIDelete()
    EndFunc
     
    Func
    _Update_mem($hWnd, $Msg, $iIDTimer, $dwTime)
     
    $CurrentHP = (_MemoryRead(0x08747DEC, $DllInformation, 'ptr'))
     
    If @Error Then
        MsgBox(4096, "ERROR", "Failed to read memory.")
        Exit
    EndIf

     
    $dec = dec(StringTrimLeft($CurrentHP, 2))
    ;~ MsgBox(0, "Данные", "HP:" & dec($dec))
    ToolTip(dec(StringTrimLeft($CurrentHP, 2)), 50, 30)
    Sleep(500)
     
        GUICtrlSetData($mem_label, StringFormat($dec))
        Sleep(1000)
    EndFunc

    Всего записей: 20 | Зарегистр. 14-02-2009 | Отправлено: 23:34 14-02-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Belfigor au3
     

    Код:
    Func _Update_mem($hWnd, $Msg, $iIDTimer, $dwTime)
     
        $CurrentHP = (_MemoryRead(0x08747DEC, $DllInformation, 'ptr'))
        If @Error Then
            MsgBox(4096, "ERROR", "Failed to read memory.")
            Exit
        EndIf

     
        $dec = dec(StringTrimLeft($CurrentHP, 2))
        ;~ MsgBox(0, "Данные", "HP:" & dec($dec))
        ToolTip(dec(StringTrimLeft($CurrentHP, 2)), 50, 30)
    ;~  Sleep(500)
     
        GUICtrlSetData($mem_label, StringFormat($dec))
    ;~     Sleep(1000)
    EndFunc

     
    Sleep мешает - от того и пошаговоо )
     
    Добавлено:
    Belfigor au3
     
    вот \то еще поможет:
    Подробнее...
     
    добавленно:
    в ней стандартные GUI константы и т.д....
    #include <WindowsConstants.au3>
     
    Устанавливается регистрация перемещения окна
    GUIRegisterMsg($WM_NCHITTEST, 'WM_NCHITTEST')
     
    функция что перемещает окно:
    Func WM_NCHITTEST($hWnd, $Msg, $wParam, $lParam)  
        Local $iProc = DllCall('user32.dll', 'int', 'DefWindowProc', 'hwnd', $hWnd, 'int', $Msg, 'wparam', $wParam, 'lparam', $lParam)  
        If $iProc[0] = $HTCLIENT Then Return $HTCAPTION  
        Return $GUI_RUNDEFMSG  
    EndFunc
     
    последняя перменная - расширенный стиль - позволяет перемещать окно за этот лейбл:
    $mem_label = GUICtrlCreateLabel('11', 15, 25, 150, 20,  -1, $GUI_WS_EX_PARENTDRAG)

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 00:26 15-02-2009
    buduc

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Памагите пожалуста.есть .txt фаил ,как создать тотже фaил толька без первого ряда.спасибо за рание.

    Всего записей: 14 | Зарегистр. 07-02-2009 | Отправлено: 03:30 15-02-2009
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)
    Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru