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

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

Закрытая тема
Настройки темы
[архив - Часть 2] AutoIt скрипты

(*.*)


Administrator


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


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

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


Изменения
Автор: Vadikan
Дата: 27-01-2008
Внимание!
Тема переведена в архивное состояние







(настоятельно рекомендуется к прочтению/поиску)


Руководство к действию по работе c AutoIt.


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

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



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

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

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

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

 

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


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

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


Возможно где-то подобный вопрос уже и был, к сожалению я ответа на него не нашел.

Как мне через AutoIT сэмитировать двойной клик на определенной иконке на рабочем столе? Сам ярлык может быть в произвольном месте, но он есть точно...
Извиняюсь если это на самом деле глупый вопрос, сам сижу уже второй день, не могу найти...

Отправлено: 15:37, 09-06-2007 | #2



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

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


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


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

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


eNcub
Этот пример, произведёт двойной клик в левой верхней части экрана:
MouseClick("left",0,0,2,50)

Первый параметр определяет кнопку мыши
Второй и третий - координаты экрана X,Y
Четвёртый параметр - это количество кликов мышью
Ну и наконец последний - это скорость перемещения указателя к заданным координатам экрана.

Этот способ подходит, если значок ярлыка находиться всё время на одном месте.
В остальных случаях логично использовать команду Run() - для запуска файла к которому ведёт ярлык.

Отправлено: 18:55, 09-06-2007 | #3


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


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

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


Diamond этот способ я знаю, весь хэлп перерыл...
Помоги тогда как обратиться к определнному VPN подключению. Та же ситуация, открыть панель управления могу, а два раза кликнуть на нужном соединении не могу...

Отправлено: 20:12, 09-06-2007 | #4


Аватара для XXXler

Ветеран


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

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


eNcub, пользуйся штатной утилитой rasdial:
Код: Выделить весь код
rasdial Имя_VPN_подключения имя_пользователя пароль_пользователя
параметры с пробелами заключаются в кавычки
при удачном подключении возвращает 0, в противном случае код конкретной ошибки

есть вариант запускать как через ярлык:

Код: Выделить весь код
rasphone.exe -f "C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Connections\Pbk\rasphone.pbk" -d "Имя VPN подключения"
при этом не надо указывать имя и пароль, но для полного автомата в свойствах подключения необходимо снять все галки "запрашивать имя\пароль\номер"

Последний раз редактировалось XXXler, 09-06-2007 в 21:13.

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

Отправлено: 20:53, 09-06-2007 | #5


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


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

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


Цитата:
есть вариант запускать как через ярлык:

Код:
rasphone.exe -f "C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Connections\Pbk\rasphone.pbk" -d "Имя VPN подключения"


при этом не надо указывать имя и пароль, но для полного автомата в свойствах подключения необходимо снять все галки "запрашивать имя\пароль\номер"
Вот это мне и нужно было .
Только... вот теперь вопрос дурацкий будет, а как эту строку прописать правильно в АвтоИТ?
Пробую из командной строки - всё получается, а в скрипте не могу. В пути к ярлыку есть пробелы, как сделать чтобы воспринимался параметр командной строки как единое целое?
Пробовал
rasphone.exe -f 'C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Connections\Pbk\rasphone.pbk' - не работает. Есть ли в АвтоIT что-то типа экранирования символов (типа обратного слэша в линуксе).?

Отправлено: 09:59, 10-06-2007 | #6


Аватара для XXXler

Ветеран


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

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


eNcub, просто удвой знаки кавычек:

Код: Выделить весь код
$ConnectionName="Имя подключения"
Run(@SystemDir&"\rasphone.exe -f """&@AppDataCommonDir&"\Microsoft\Network\Connections\Pbk\rasphone.pbk"" -d """&$ConnectionName&"""")
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:09, 10-06-2007 | #7


Аватара для Creat0R

Must AutoIt


Moderator


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

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


Никак не могу довести до ума одну, казалось бы простую вещь...

Имеем переменную $InetSpeed которой присваивается определённое значение каждую секунду, как можно догадаться, эта переменная содержит данные о скорости закачки файла.

Вот по завершению закачки, мне нужно узнать среднюю скорость за этот промежуток закачки.

Я сделал, наверное (хотя точно) не правильно, но вот что у меня получилось...

Я засёк самую большую видимую скорость, самую маленькую, и вычеслил золотую середину среди них:

Код: Выделить весь код
$LowsetSpeed = 0
$HighestSpeed = 0
$TempLowsetSpeed = 0
$TempHighestSpeed = 0

While @InetGetActive
    $InetGetBytesRead = @InetGetBytesRead

        ;Получаем скорость закачки (кб' в секунду)
    $InetSpeed = 170;Тут идёт функция _InetGetSpeed(1000) - подсчитывает скорость закачки в секунду. Возвращается скорость/в сек.

        $TempLowsetSpeed = $InetSpeed
    $TempHighestSpeed = $InetSpeed

        If $TempLowsetSpeed < $LowsetSpeed Or $LowsetSpeed = 0 Then $LowsetSpeed = $TempLowsetSpeed
    If $TempHighestSpeed > $HighestSpeed Or $HighestSpeed = 0 Then $HighestSpeed = $TempHighestSpeed
WEnd

$AverageDownloadSpeed = Round(_GetAverageSpeed($LowsetSpeed, $HighestSpeed)/1024)

Func _GetAverageSpeed($LowsetSpeed, $HighestSpeed)
    Return ($LowsetSpeed / 2) + ($HighestSpeed / 2)
EndFunc

В общем в результате, если самая большая скорость была 190, а самая маленькая 65, то просто 190 делим на 2, 65 тоже делим на 2, и прибавляем результаты (получаем 127,5)...

Но я не уверен что это правильное решение, полагаю нужно в процессе (в цикле) засикать наиболее замеченные данные о скорости, и уже между ними подсчитывать среднее значение - но как это реализовать корректно, я не могу никак сообразить

Кто может, имеет время, помогите плиз разобраться

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

Русское сообщество AutoIt | CreatoR's Lab | Opera AC Community


Отправлено: 03:25, 11-06-2007 | #8


Аватара для gregaz

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


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

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


Creat0R
Большое спасибо за помощь
Действительно твой совет об использовании новых окон GUI для вывода информации значительно облегчает жизнь.

Есть пара вопросов :
1.Никак не могу найти функцию переименования файлов (ведь должен же быть какой-нибудь Rename)
2.Как задействовать поиск в Helpe (почему то не находятся разделы) ?

Последний раз редактировалось gregaz, 11-06-2007 в 15:12.


Отправлено: 13:32, 11-06-2007 | #9


Googler


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

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


Creat0R
не совсем понятно как работает _InetGetSpeed(), но тем не менее... среднюю скорость нельзя вычислить на основывании только мгновенных значений скорости. Для расчета нужно просто взять разницу в значениях @InetGetBytesRead (закачанный размер) и разделить на соответствующую разницу значений TimerDiff() (за какой период времени).

Цитата:
кстати, как оно по русски?
в данном случае просто "подстрока"

Последний раз редактировалось amel27, 11-06-2007 в 13:58.


Отправлено: 13:50, 11-06-2007 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Открывая 7z архив пишет не удаётся открыть как архив. Можно ли его восстановить? DreDo Хочу все знать 4 01-12-2009 18:54
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:. Vadikan AutoIt 1543 18-01-2009 10:46
[Архив - Часть 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




 
Переход