Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Закрытая тема
Настройки темы
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

(*.*)


Сообщения: 36560
Благодарности: 6694


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 21-01-2009
Описание: архив
Внимание!


В связи с созданием отдельного форума по AutoIt, эта тема переводится в архивное состояние. Если у вас есть вопрос, создайте новую тему или поднимите существующую, если в ней обсуждается аналогичная проблема.

Пожалуйста, не создавайте тем с названием "Помогите!" или "Нужна помощь по AutoIt". Это и так понятно Заголовок темы должен быть осмысленным.



Сайт программы
Русская справка
Коллекция AutoIt скриптов от Sanja Alone
Коллекция AutoIt скриптов от MSFN (могут быть устаревшие).


Справочник по командам rundll32 (команды запуска диалоговых окон и не только...)

AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо).

Архивы старых тем по AutoIt или они же в 7z архиве (версии для печати) - 846 кб (настоятельно рекомендуется к прочтению/поиску)
(он же прикреплен в шапке)


Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров.
Цитата Vadikan:
В теме уже свыше 500 сообщений и поиск нужной информации в ней усложняется. Есть предложение собрать все решения (скрипты) и разместить их на Wiki по принципу "один скрипт - одна статья wiki", добавляя статьи в категорию Autoit. Речь, в принципе, идет об общих решениях, а не о скриптах для установки конкретной программы. Название статьи, очевидно, должно отражать назначение скрипта. Затем можно в шапке просто разместить ссылки на статьи Wiki.

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:02, 05-02-2006

 

Аватара для TERMINAL

Ветеран


Сообщения: 753
Благодарности: 28

Профиль | Отправить PM | Цитировать


amel27, Проблемка в том что у всех юзеров один и тот же айпишник а имена пользователей разные....

-------
Автоматизация прежде всего....


Отправлено: 14:15, 10-04-2008 | #421



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата TERMINAL:
у всех юзеров один и тот же айпишник а имена пользователей разные.... »
Если ты про мой гипотетический вариант, то там сеть вообще не нужна - файл может быть локальный... Если про готовые примеры то это тоже не проблема - там кроме IP еще и номер порта задается, так что (даже если в интерфейсе этого не видно) в скрипте можно указать разные номера портов для одного IP.

Цитата KillHunter:
что нужно прописать что бы снять галочку "Desktop Shortcut"??? »
Эта ветка по общим вопросам, для вопросов по установке конкретных программ ищите соответствующую тему или создавайте новую (это из шапки)... Либо формулируйте вопрос без привязки к конкретной программе/версии... Подсказка: используйте "AutoIT Window Info" из комплекта AutoIT.

Последний раз редактировалось amel27, 10-04-2008 в 16:25.


Отправлено: 16:13, 10-04-2008 | #422


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


amel27 , спасибо, но это не совсем то... Не подскажешь, как получить статистику через Ras API?

Последний раз редактировалось nevson, 10-04-2008 в 22:36.


Отправлено: 19:57, 10-04-2008 | #423


Аватара для KillHunter

Пользователь


Сообщения: 143
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата amel27:
Эта ветка по общим вопросам, для вопросов по установке конкретных программ ищите соответствующую тему или создавайте новую (это из шапки)... Либо формулируйте вопрос без привязки к конкретной программе/версии... Подсказка: используйте "AutoIT Window Info" из комплекта AutoIT. »
Я извиняюсь что влез не в ту тему,но эмуляцию клика я и сам могу прописать.Меня интересует эмуляция клавиатурных
нажатий(по идее там нужно нажать TAB,4 раза Down,SPACE и ENTER,я пишу что-то типа:
HTML код: Выделить весь код
Send("{TAB}") Send("{DOWN 4}") Send("{SPACE}") Send("{ENTER}")

но ярлык всё равно создаётся)

-------
http://www.2ip.ru/bar/ip21.gif


Последний раз редактировалось KillHunter, 11-04-2008 в 01:04.


Отправлено: 20:25, 10-04-2008 | #424


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата KillHunter:
Меня интересует эмуляция клавиатурных
нажатий »
Эмуляция нажатий (равно как и "кликов") довольно ненадежна при работе с окнами, так как нужно быть уверенным что активизировано именно то окно и именно тот элемент окна, иначе комбинация не сработает или уйдет не туда и результат непредсказуем.... Поэтому для установки ПО этот метод применять нежелательно, либо как крайний случай. AutoIT имеет достаточно возможностей для прямой работы с окнами, главное однозначно идентифицировать окно и элемент (заголовок, класс, текст). Вот вариант для твоего случая:
Код: Выделить весь код
#include <GuiTreeView.au3>

$hDTCtrl = ControlGetHandle("DAEMON Tools", "", "SysTreeView321")  ; ищем элемент окна
$hDTItem = _GUICtrlTreeView_FindItem($hDTCtrl, "Desktop Shortcut") ; ищем нужный пункт списка
_GUICtrlTreeView_SetChecked($hDTCtrl, $hDTItem, False)             ; снимаем чекбокс

Отправлено: 09:45, 11-04-2008 | #425


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


DENoszone
Цитата:
проверить какое мыло если к примеру qwe@mail.ru то дальше продолжить работу... если что то другое то закрывать IE и дальше не чего не выполнять »
типа такого:
Код: Выделить весь код
#include <IE.au3>

; Открытие окна Nigma
$oIE = _IECreate("http://www.nigma.ru/index_menu.php?action=authorization&display=login", 0, 1, 0, 0)
WinSetState("", "", @SW_MAXIMIZE)
_IELoadWait($oIE)
MsgBox(0, "Открытие окна Nigma", "Шаг 1 выполнен, проверьте результат!")

; Попытка регистрации
$oForm = _IEFormGetCollection ($oIE, 1)
If IsObj($oForm) Then
    $oLogin = _IEFormElementGetObjByName($oForm, "login")
    If IsObj($oLogin) Then
        $oPassw = _IEFormElementGetObjByName($oForm, "pass")
        If IsObj($oPassw) Then
            _IEFormElementSetValue($oLogin, "LoginName")
            _IEFormElementSetValue($oPassw, "Password")
            _IEFormSubmit($oForm)
            MsgBox(0, "Попытка регистрации", "Шаг 2 выполнен, проверьте результат!")
        EndIf
    EndIf
EndIf

; Переход на страницу профиля
$iRes = _IENavigate($oIE, "http://www.nigma.ru/index_menu.php?action=authorization&display=userinfo")
MsgBox(0, "Переход на страницу профиля", "Шаг 3 выполнен, проверьте результат!")

; Чтение почтового адреса
If $iRes Then
    $oForm = _IEFormGetCollection ($oIE, 1)
    If IsObj($oForm) Then
        $oMail = _IEFormElementGetObjByName($oForm, "email")
        If IsObj($oMail) Then
            $sMail = _IEFormElementGetValue($oMail)
            MsgBox(0, "Чтение почтового адреса", "Шаг 4 выполнен, мыло: "& $sMail)
        EndIf
    EndIf
EndIf

; Проверяем результат
If $sMail="qwe@mail.ru" Then
    MsgBox(0, "Успешная проверка", "Мыло правильное, чего дальше делать?")
Else
    _IEAction($oIE,"quit") ; Закрываем окно IE
    MsgBox(16, "Проверка не пройдена", "Типа облом, надо выходить")
    MsgBox(0, "Закрываем окно IE", "Шаг 5 выполнен")
    Exit
EndIf
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:06, 11-04-2008 | #426


Аватара для KillHunter

Пользователь


Сообщения: 143
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата amel27:
Вот вариант для твоего случая: »
Всё равно ярлык остаётся...(((

-------
http://www.2ip.ru/bar/ip21.gif


Отправлено: 12:04, 11-04-2008 | #427


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата KillHunter:
Всё равно ярлык остаётся...((( »
ну коли не хошь в свою тему чтобы не оффтопить кидай ВЕСЬ скрипт в ПМ

Отправлено: 12:38, 11-04-2008 | #428


Ветеран


Сообщения: 825
Благодарности: 50

Профиль | Отправить PM | Цитировать


KillHunter, Может проще его удалять из AutoIt скрипта в конце?!

Отправлено: 14:10, 11-04-2008 | #429


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата nevson:
но это не совсем то... Не подскажешь, как получить статистику через Ras API? »
примерно так, проверяй:
Код: Выделить весь код
; Возвращает количество байт, отправленых или принятых через RAS интерфейс
;   $iFlag - что включать в расчет:
;       1 - принято,
;       2 - отправлено,
;       3 - всего.
Func _RASConnBytes ($iFlags = 1)
    Local Const $MAX_PATH = 260
    Local Const $RAS_MaxDeviceType = 16
    Local Const $RAS_MaxEntryName = 256
    Local Const $RAS_MaxDeviceName = 128

    $tRASCONN = DllStructCreate("dword dwSize;hwnd hRasConn;char szEntryName["& $RAS_MaxEntryName+1 &"];" & _
                                "char szDeviceType["& $RAS_MaxDeviceType+1 &"];" & _
                                "char szDeviceName["& $RAS_MaxDeviceName+1 &"];" & _
                                "char szPhonebook[" & $MAX_PATH &"];" & _
                                "dword dwSubEntry;byte guidEntry[16];dword dwFlags;byte luid[8]")
    $tRAS_STATS = DllStructCreate(  "dword dwSize;dword dwBytesXmited;dword dwBytesRcved;dword dwFramesXmited;" & _
                                    "dword dwFramesRcved;dword dwCrcErr;dword dwTimeoutErr;dword dwAlignmentErr;" & _
                                    "dword dwHardwareOverrunErr;dword dwFramingErr;dword dwBufferOverrunErr;" & _
                                    "dword dwCompressionRatioIn;dword dwCompressionRatioOut;dword dwBps;dword dwConnectDuration")
    $iCntByte = DllStructCreate("dword")
    $iCntConn = DllStructCreate("dword")
    DllStructSetData($iCntByte,  1, DllStructGetSize($tRASCONN)  )
    DllStructSetData($tRASCONN,  1, DllStructGetSize($tRASCONN)  )
    DllStructSetData($tRAS_STATS,1, DllStructGetSize($tRAS_STATS))

    $aRet = DllCall("rasapi32.dll", "int", "RasEnumConnections", "ptr", DllStructGetPtr($tRASCONN), "ptr", DllStructGetPtr($iCntByte), "ptr", DllStructGetPtr($iCntConn))
    If $aRet[0] Then Return SetError(2, $aRet[0], -1)
    If DllStructGetData($iCntConn,1)<1 Then Return SetError(1, 0, 0) ; Ошибка: нет открытых соединений

    $aRet = DllCall("rasapi32.dll", "int", "RasGetConnectionStatistics", "hwnd", DllStructGetData($tRASCONN, "hRasConn"), "ptr", DllStructGetPtr($tRAS_STATS))
    If $aRet[0] Then Return SetError(3, $aRet[0], -1)

    Local $iBites = 0
    If BitAnd($iFlags,1) Then $iBites += DllStructGetData($tRAS_STATS,3)
    If BitAnd($iFlags,2) Then $iBites += DllStructGetData($tRAS_STATS,2)
    Return $iBites
EndFunc ; ==> _RASConnBytes
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:01, 11-04-2008 | #430



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[архив - Часть 2] AutoIt скрипты Vadikan AutoIt 985 21-01-2008 09:58
Вопрос - [Архив] Антивирусные программы - ОБЩИЕ ВОПРОСЫ FOX RED Защита компьютерных систем 67 21-11-2007 15:05
[Архив - Часть 1.3] AutoIt скрипты biork AutoIt 503 09-06-2007 11:27
[Архив - Часть 1.2] AutoIt скрипты Dirk Diggler AutoIt 505 02-12-2006 11:00
[Архив - Часть 1.1] AutoIt скрипты EgOrus AutoIt 335 04-02-2006 16:58




 
Переход