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

Ответить
 • Просмотры: 34
Аватара пользователя
N0rB

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

Сообщение N0rB »

Цитата TERMINAL:



у всех юзеров один и тот же айпишник а имена пользователей разные....
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




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




Цитата KillHunter:



что нужно прописать что бы снять галочку "Desktop Shortcut"???
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




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

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

Сообщение Creat0R »

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

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

Сообщение Creat0R »

Цитата amel27:



Эта ветка по общим вопросам, для вопросов по установке конкретных программ ищите соответствующую тему или создавайте новую (это из шапки)... Либо формулируйте вопрос без привязки к конкретной программе/версии... Подсказка: используйте "AutoIT Window Info" из комплекта AutoIT.
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




Я извиняюсь что влез не в ту тему,но эмуляцию клика я и сам могу прописать.Меня интересует эмуляция клавиатурных

нажатий(по идее там нужно нажать TAB,4 раза Down,SPACE и ENTER,я пишу что-то типа:



HTML код:

Код: Выделить всё

Send("{TAB}")
Send("{DOWN 4}") 
Send("{SPACE}")
Send("{ENTER}")



но ярлык всё равно создаётся)
Аватара пользователя
djgoodwin

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

Сообщение djgoodwin »

Цитата KillHunter:



Меня интересует эмуляция клавиатурных

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




Эмуляция нажатий (равно как и "кликов") довольно ненадежна при работе с окнами, так как нужно быть уверенным что активизировано именно то окно и именно тот элемент окна, иначе комбинация не сработает или уйдет не туда и результат непредсказуем.... Поэтому для установки ПО этот метод применять нежелательно, либо как крайний случай. AutoIT имеет достаточно возможностей для прямой работы с окнами, главное однозначно идентифицировать окно и элемент (заголовок, класс, текст). Вот вариант для твоего случая:

Код:

Код: Выделить всё

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

[Расширение jpg было запрещено, вложение больше недоступно.]

Аватара пользователя
djgoodwin

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

Сообщение djgoodwin »

DENoszone


Цитата:



проверить какое мыло если к примеру [url=mailto:qwe@mail.ru]qwe@mail.ru[/url] то дальше продолжить работу... если что то другое то закрывать IE и дальше не чего не выполнять
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




типа такого:



Код:

Код: Выделить всё

#include 
; Открытие окна 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
Аватара пользователя
Maza Faka

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

Сообщение Maza Faka »

Цитата amel27:



Вот вариант для твоего случая:
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




Всё равно ярлык остаётся...(((
Аватара пользователя
TERMINAL

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

Сообщение TERMINAL »

Цитата KillHunter:



Всё равно ярлык остаётся...(((
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




ну коли не хошь в свою тему чтобы не оффтопить кидай ВЕСЬ скрипт в ПМ
Аватара пользователя
Creat0R

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

Сообщение Creat0R »

Maza Faka,
Цитата:



А не проще сделать так:



Хех, UxTheme ничего не напоминает? это только для XP Изображение.

И во-вторых, тут нельзя задать цвет самой линии, а в третьих я же написал:


Цитата:



Создание «Group» элемента в стиле Web-формы
Аватара пользователя
DENoszone

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

Сообщение DENoszone »

Цитата nevson:



но это не совсем то... Не подскажешь, как получить статистику через Ras API?
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.




примерно так, проверяй:

Код: Выделить всё

; Возвращает количество байт, отправленых или принятых через 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
Ответить

Вернуться в «AutoIt»