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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    deadbead 10:22 17-04-2009
    Цитата:
    Что я не так сделал?

    Ну во-первых, мне кажется TitleMode лишнее. Есть ведь класс окна, вот по нему и нужно определять. Возможно $hWnd содержит совсем не тот указатель.
     
    Posochov 11:35 17-04-2009
    Цитата:
    как это делается в VBScript

    Можно это и использовать:
     

    Код:
     
    $objShellApp = ObjCreate("Shell.Application")
    $Service = "W32Time"
     
    If $objShellApp.IsServiceRunning($Service) Then
        ConsoleWrite("Сервис [" & $Service & "] Запущен." & @CRLF)
    Else
        ConsoleWrite("Сервис [" & $Service & "] НЕ Запущен." & @CRLF)
    EndIf


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

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 14:34 17-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ViSiToR, а создоваемые обхекты CreateObject - они откуда беруться?
    хм....анологично как WinApi - где куча функций и т.д.
    Или в этом плане все определенная AutoIt dll / ну или какой то свой репозитарий?
     
    Добавлено:
     
    где то есть инфо по стандартным объектам которые можно использовать (как WinApi в каждом windows? например)?

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 15:39 17-04-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    sproxy 15:39 17-04-2009
    Цитата:
    создоваемые обхекты CreateObject - они откуда беруться?

    Из системы. Зарегистрированные COM-объекты.
     

    Цитата:
    где то есть инфо по стандартным объектам которые можно использовать

    В справочниках для WSH
     
    Есть ещё такой инструмент как AutoIt Script-o-matic (для работы с WMI).

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

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 16:04 17-04-2009
    monsoon



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

    Цитата:
    Немного да, вот список того что поддерживает (там есть плей, пауза, управление браузером и т.д.)
    и еще вот тут посмотреть:
    #Include <Misc.au3>
    _IsPressed($sHexKey[, $vDLL = 'user32.dll'])

    Вот отсюда взял твой пример по переключению раскладки по {LWIN}{SPACE}, {RWIN}{SPACE} или +{SPACE}  
    Так вот у меня переключение по Shift+Space происходит, а с помощью WIN клавиш нет.
     
    Взял простенький пример из examples и добавил вывод сообщения по LWIN+g
    HotKeySet("{LWIN}g", "MyMess")  
    HotKeySet("+!d", "ShowMessage")  ;Shift-Alt-d
    По Shift-Alt-d сообщение выводится, а по LWIN+g фиг
     
    ViSiToR здесь давал пример скрипта для отображения нажатых клавиш. А как посмотреть что записалось функцией ConsoleWrite? Из справки "Выдать данные в поток, для чтения его, например, некоторыми редакторами". А какими редакторами?
     
    Вообще, меня интересует сможет ли работать AutoIt c тремя клавишами, запускающими Office приложения. Т.к. скриптом у меня не получилось отобразить коды, вот они для одной из этих клавиш, полученные в 3-x других программах:
     
    1. DN W=255 L=16842753 ExtScanCode=1
    2. D - (N)  255x1x1          
    3. SC101  (в AutoHotkey)
     
    {LAUNCH_APP1} в AutoIT это по-моему не то.

    Всего записей: 1255 | Зарегистр. 30-01-2003 | Отправлено: 16:44 17-04-2009
    deadbead

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

    Не.. Проблема не в ControlSend... После выполнения в AHK
    Код:
    SendMessage, 6, 1, -1,, ahk_pid %rfo_id%
    окно начинает реагировать на нажатие кнопок на клавиатуре, ходя и не активно, а в AutoIt после выполнения
    Код:
    _SendMessage($hWnd, $WM_ACTIVATE, 1, -1)
    этого не происходит... (( Т.е. сообщение о том что окно "активно" до окна не доходит...
     
    ViSiToR
    Цитата:
    Возможно $hWnd содержит совсем не тот указатель

    Не думаю... Т.к. например
    Код:
    WinMove($hWnd, 0, 0)
    двигает окно....
     
    Ну не верю я, что AHK может что-то, чего не может AutoIt! )

    Всего записей: 19 | Зарегистр. 02-12-2008 | Отправлено: 17:26 17-04-2009
    Posochov



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ViSiToR
    Цитата:
    Есть ещё такой инструмент как AutoIt Script-o-matic (для работы с WMI).

    Скачал, попробовал запустить - ругается на переменные в строке:
    Код:
    GuiCreate("AutoIt Scriptomatic Tool", 684, 561,(@DesktopWidth-684)/2, (@DesktopHeight-561)/2 , $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS)

    Цитата:
    WARNING: $WS_OVERLAPPEDWINDOW: possibly used before declaration.
    и т.д.
     
    А чего ж ему не ругаться, когда переменные и вправду не объявлены.
     
    Или это у меня чего не подключено?

    Всего записей: 1703 | Зарегистр. 30-04-2005 | Отправлено: 18:06 17-04-2009 | Исправлено: Posochov, 18:10 17-04-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    monsoon 16:44 17-04-2009
    Цитата:
    какими редакторами?

    SciTE как ни странно
     
    deadbead 17:26 17-04-2009
    Цитата:
    сообщение о том что окно "активно" до окна не доходит

    А что означает «ahk_pid» в AutoHotkey? Может там нужно передавать PID процесса который посылает сообщение? (хотя маловероятно).
     
    Posochov 18:06 17-04-2009
    Цитата:
    ругается на переменные в строке

    И верно ругается, скрипт был написан давно, а с того момента многое изменилось. Добавление #include <WindowsConstants.au3> в начало скрипта, должно решить проблему.


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

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 20:29 17-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    monsoon 16:44 17-04-2009
    Цитата:
    Взял простенький пример из examples и добавил вывод сообщения по LWIN+g  
     HotKeySet("{LWIN}g", "MyMess")  
     HotKeySet("+!d", "ShowMessage")  ;Shift-Alt-d  
     По Shift-Alt-d сообщение выводится, а по LWIN+g фиг

    Все из за замечательной специфики Win клавиши. Что бы работал тот пример, необходимо отключить Win клавишу.
     
    Но можно и так проверять (Win клавиша включена):
    Подробнее...
     
     
    Добавлено:
     
    monsoon 16:44 17-04-2009
    Цитата:
    А как посмотреть что записалось функцией ConsoleWrite? Из справки "Выдать данные в поток, для чтения его, например, некоторыми редакторами". А какими редакторами?

    В редакторе SceTE (скорее всего именно в нем пишите на AutoIt? Если нет, непременно попробуйте). Так вот, в нем, внизу окна, есть еще небольшое (по высоте) окошко, в это окошко выводится информация при запуске/компиляции скрипта, и так же, именно в это окшко выводится то, что высылается с помощью ConsoleWrite.

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 22:40 17-04-2009 | Исправлено: sproxy, 23:00 17-04-2009
    monsoon



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

    Цитата:
    Но можно и так проверять (Win клавиша включена):
    Да, так работает, спасибо. Позже попробую разобраться в чем специфика и отличие.
     
    ViSiToR, sproxy
    SciTE, который шел вместе с AutoIT я догадался открыть, но в начале не понял как и что нужно сделать. Теперь ясно, что нужно было просто-напросто открыть файл со скриптом, активизировать Output через меню или по F8 и запустить по F5
     
    В справке, кстати, кроме про SciTE ничего кроме этого не написано:
    Цитата:
    (Замечание: Если также установлен реадактор SciTe для AutoIt, то для редактирования AutoIt сценария вместо цитируемого ниже редактора Notepad можно использовать редактор SciTe).


    Цитата:
    В редакторе SciTE (скорее всего именно в нем пишите на AutoIt?

    да, нет пока на AutoIT еще не пишу  
    А если он не сможет определить нужные мне клавиши, то скорее всего и не буду.

    Всего записей: 1255 | Зарегистр. 30-01-2003 | Отправлено: 01:38 18-04-2009
    sproxy



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

    Цитата:
    А если он не сможет определить нужные мне клавиши, то скорее всего и не буду.

    AutoIt это только язык, а в этой задаче главное выяснить технологию.
    К примеру скрипт выше, по определению клавиш - некоторые клавиши моей media клавиатуры определил ))
    Кстати, тут важна сама клавиатура, у меня logitech wave - уверен, для некотрых её клавиши, только сам дрйвер клавиатуры сможет определить...

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 01:48 18-04-2009
    wellic

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вот интересный сайт. Есть очень интересные статьи по AutoIT.
     
    Например, как одновременно писать на автоит и питоне
    http://blog.openquality.ru/python-autoit/
    Используя мощности каждого из языков
     
    Вот оглавление http://blog.openquality.ru/table-of-contents/

    Всего записей: 339 | Зарегистр. 06-05-2002 | Отправлено: 03:37 18-04-2009
    Posochov



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Никто не подскажет как грамотно прикрутить к AutoIt3 SciTE Ru-Board Edition?
     
    1. Распаковать в папку предлагаемую по умолчанию - C:\Program Files\SciTE.
    2. Распаковать в папку AutoIt3 - C:\Program Files\AutoIt3\SciTE.
     
    Или ...

    Всего записей: 1703 | Зарегистр. 30-04-2005 | Отправлено: 12:34 18-04-2009 | Исправлено: Posochov, 12:36 18-04-2009
    deadbead

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Почти!!!  
     
    С _SendMessage разобрался) В AHK параметры передаются типа Integer, а в AutoIt в Hex))
     
    Поэтому заменив 1 на 0x1 сообщение до окна дошло) (окно стало реагировать на нажатие стрелочек на клавиатуре не будучи активным)
     

    Код:
    #Include <WinAPI.au3>
    #include <WindowsConstants.au3>
     
    #NoTrayIcon
     
    $hWnd = WinGetHandle("[CLASS:D3D Window]") ; ищем окно рфки, сохраняем идентификатор ее процесса в rfo_id
     
    _SendMessage($hWnd, $WM_ACTIVATE, 0x1)     ; рфка не обрабатывает сообщения, если окно ввода неактивно
                                               ; мы "обманем" её, послав сообщение об активации окна

    Sleep(2000)
     
    ControlSend($hWnd, "", "", "{F1}")          ; "жмем" необходимую кнопку
    ControlSend($hWnd, "", $hWnd, "{F1}")
    ControlSend($hWnd, "", "[CLASS:D3D Window]", "{F1}")
     
    Exit(0)

     
     
    Но вот беда... ControlSend не доходят до окна... ( Кроме того после выполнения ControlSend окно перестает реагировать на нажатие стрелочек на клавиатуре...
     
    Какой же контрол указать этой функции?
     
    Вот что выдает AutiI Win Info
    Цитата:
    >>>> Window <<<<
    Title:    RF Online - 1
    Class:    D3D Window
    Position:    110, -10
    Size:    1160, 898
    Style:    0x14CE0000
    ExStyle:    0x00000100
    Handle:    0x002305EE
     
    >>>> Control <<<<
    Class:    
    Instance:    
    ClassnameNN:    
    Advanced (Class):    
    ID:    
    Text:    
    Position:    
    Size:    
    ControlClick Coords:    
    Style:    
    ExStyle:    
    Handle:    
     
    >>>> Mouse <<<<
    Position:    509, 15
    Cursor ID:    0
    Color:    0x8BBEE4
     
    >>>> StatusBar <<<<
     
    >>>> Visible Text <<<<
     
     
    >>>> Hidden Text <<<<

     

     
    И почему тогда AHK-ная функция ControlSend дотягивается до окна?

    Всего записей: 19 | Зарегистр. 02-12-2008 | Отправлено: 17:07 18-04-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    deadbead 17:07 18-04-2009
    Цитата:
    Какой же контрол указать этой функции?

    А если так попробовать:
     

    Код:
    ControlSend("", "", $hWnd, "{F1}")

     
    ?

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

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 21:12 18-04-2009
    deadbead

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

    Код:
    ControlSend("", "", $hWnd, "{F1}")

     
    Не-а... Не прокатило (
     
    Как бы сравнить сообщения AHK и AutioIt отправляемые функции ControlSend.....
     
    М?

    Всего записей: 19 | Зарегистр. 02-12-2008 | Отправлено: 11:23 19-04-2009 | Исправлено: deadbead, 11:27 19-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    deadbead
    ...а ссылка на игру есть, глянуть?

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 19:18 19-04-2009
    deadbead

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    да.. большая она... _http://rfonline.ru и регистрация нужна. (бесплатная)

    Всего записей: 19 | Зарегистр. 02-12-2008 | Отправлено: 19:21 19-04-2009
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите а как задать свой пароль на скрипт при компиляции в Aut2exe.exe и AutoIt3Wrapper.exe?

    Всего записей: 1645 | Зарегистр. 01-05-2006 | Отправлено: 21:24 19-04-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ynbIpb 21:24 19-04-2009
    Цитата:
    как задать свой пароль на скрипт при компиляции в Aut2exe.exe

    В последних версиях вроде никак, т.к убрали возможность декомпилляции скриптов.

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

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 23:36 19-04-2009
    timsky



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

    Цитата:
    Вобщем, кому понадобится данное решение ....  
    После смены прокси в реестре вызываем следующую функцию:  
     
     
    Func Internet_Update_RegistryChange($h_wnd = 0)  
     
        Local Const $_INTERNET_OPTION_SETTINGS_CHANGED = 39  
    Local Const $_INTERNET_OPTION_REFRESH = 37  
     
        DllCall("wininet.dll", "int", "InternetSetOption", "hwnd", $h_wnd, "dword", $_INTERNET_OPTION_SETTINGS_CHANGED, "str", "", "dword", 0)  
    DllCall("wininet.dll", "int", "InternetSetOption", "hwnd", $h_wnd, "dword", $_INTERNET_OPTION_REFRESH, "str", "", "dword", 0)  
     
    EndFunc

    Что-то не работает у меня эта функция
    Например, открыл ya.ru в IE и запускаю следующий скрипт:

    Код:
    HotkeySet('1', 'NoImages')
    HotkeySet('2', 'Images')
    HotkeySet('0', 'Internet_Update_RegistryChange')
     
    While 1
    Sleep(100)
    Wend
     
    Func
    NoImages()
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Display Inline Images', 'REG_SZ', 'no')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Play_Animations', 'REG_SZ', 'no')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Display Inline Videos', 'REG_SZ', 'no')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Play_Background_Sounds', 'REG_SZ', 'no')
        TrayTip('', 'No Images', 5)
    EndFunc   ;==>
     
    Func Images()
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Display Inline Images', 'REG_SZ', 'yes')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Play_Animations', 'REG_SZ', 'yes')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Display Inline Videos', 'REG_SZ', 'yes')
        RegWrite('HKCU\Software\Microsoft\Internet Explorer\Main', 'Play_Background_Sounds', 'REG_SZ', 'yes')
        TrayTip('', 'Images', 5)
    EndFunc   ;==>
     
    Func Internet_Update_RegistryChange()
     
        Local Const $h_wnd = 0
        Local Const $_INTERNET_OPTION_SETTINGS_CHANGED = 39
        Local Const $_INTERNET_OPTION_REFRESH = 37
     
        DllCall('wininet.dll', 'int', 'InternetSetOption', 'hwnd', $h_wnd, 'dword', $_INTERNET_OPTION_SETTINGS_CHANGED, 'str', '', 'dword', 0)
        DllCall('wininet.dll', 'int', 'InternetSetOption', 'hwnd', $h_wnd, 'dword', $_INTERNET_OPTION_REFRESH, 'str', '', 'dword', 0)
     
        TrayTip('', 'APPLY', 5)
    EndFunc

    Пришлось $h_wnd = 0 объявить в теле ф-и: Local Const $h_wnd = 0, а то скрипт выдавал ошибку, что undeclared.
    Ну так вот далее жмем 1, чтобы в реестре отключились картинки и прочее, далее жмем 0 и срабатывает вышеуказанная ф-я, но IE как отображал картинки, так и дальше их отображает. Обновлял страницу, открывал др. сайты (кеш и куки предварительно был вычищен) до тех пор, пока не перезапущу IE.
    Вобщем, не срабатывает функция. А параметры из реестра и так подхватываются при перезапуске.
    В чем трабля, не пойму

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 04:08 20-04-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