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

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

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

(*.*)


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


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

Профиль | Сайт | Отправить 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 11, etc | Чат @winsiders

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

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

 

Аватара для Sanja Alone

Ищу Человека…


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

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


Скрипт для применения темы

Присутствуют некоторые отличия от предыдущих.

Код: Выделить весь код
#NoTrayIcon
Opt("TrayIconHide",1)
Global $Title='Theme apply', $Properties='Свойства', $del, $theme

#region CODE
_CmdLine()
If $del=1 Then Opt("OnExitFunc","Quit")
;то же, что и Run('rundll32.exe Shell32.dll,Control_RunDLL desk.cpl desk,@Themes /Action:OpenTheme /File:"'&$theme&'"') (нужен AutoIt 3.2.2.0)
ShellExecute($theme)
;дождаться окна
WinWait($Properties)
WinSetState($Properties,'',@SW_HIDE)
;нажать на кнопку OK (должно работать и при неактивном окне)
ControlClick($Properties,'','Button3')
WinWait($Properties)
WinClose($Properties)
WinWaitClose($Properties)
Exit
#endregion CODE

#region FUNCTIONS
Func _CmdLine()
    If $CmdLine[0]<>0 Then
        For $k=1 To $CmdLine[0]
            If $CmdLine[$k]='/?' or $CmdLine[$k]='-?' Then
                Help()
                Exit
            EndIf
            If StringInStr($CmdLine[$k],'/theme=') Then
                $theme=StringTrimLeft($CmdLine[$k],7)
            EndIf
            If StringInStr($CmdLine[$k],'/del') Then
                $del=1
            EndIf
        Next
    Else
        Help()
        Exit
    EndIf
EndFunc

Func Help()
    MsgBox(64+262144,$Title & ': Использование',@ScriptName&' /theme="тема" [/del]'&@LF&@LF&@LF&'Ключи командной строки:'&@LF&@LF&'/theme="тема" - файл темы'&@LF&@LF&'/del                    - самоубийство'&@LF&@LF&'/?                       - Использование (это окно)')
EndFunc

Func Quit()
    ;самоубийство
    Run(@ComSpec & ' /c del /f /q "'&@ScriptFullPath&'"','',@SW_HIDE)
EndFunc
#endregion FUNCTIONS
Другие варианты реализации данной функциональности:
от DmitryOlenin
от amel27

-------
Sanja Alone's site (ConvRegToAU3, OEsr, RSA, AutoIt скрипты)


Последний раз редактировалось Sanja Alone, 11-07-2007 в 23:49.

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

Отправлено: 12:24, 11-07-2007 | #141



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

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


Аватара для Creat0R

Must AutoIt


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

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


Поставил последний AutoIT с поддержкой Unicode...

Теперь возникли серъёзные проблемы почти со всеми скриптами - В частности проблема заключается в том, что невозможно прочесть данные с файла который содержится в кодировке UTF-8.
Я до этого использовал функцию _Utf8ToAnsi() от amel27, но теперь она возвращает половину текста, а точнее последние символы либо съедает, либо превращает в иероглифы.

amel27:
Реально ли поправить функцию _Utf8ToAnsi()? или может есть другие альтернативы в новой версии AutoIt'а?
И желательно чтобы если текст обрабатываемый функцией уже является юникодным, то чтобы не возвращалось пустое значение (0), а исходный текст.

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

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

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

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 01:28, 12-07-2007 | #142


Googler


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

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


Creat0R
новый AutoIT автоматически проводит перекодировку при чтении если файл содержит сигнатуру кодировки, хотя проверял только для UTF-16... сигнатура для UTF-8: EF BB BF, подробно: http://ru.wikipedia.org/wiki/%D0%AE%...BA%D0%BE%D0%B4. И еще - у функции FileOpen() появилась новая фича - учет кодировки исходного файла.

Последний раз редактировалось amel27, 12-07-2007 в 04:44.


Отправлено: 04:30, 12-07-2007 | #143


Аватара для Creat0R

Must AutoIt


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

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


amel27
Цитата:
новый AutoIT автоматически проводит перекодировку при чтении если файл содержит сигнатуру кодировки
Если файл в кодировке Unicode, то нормально читает, при UTF-8 отображает неверно

Цитата:
у функции FileOpen() появился новый параметр - тип кодировки исходного файла
Я вкурсе (16), но я всё перепробовал, файл в кодировке UTF-8, нормально отобразить его текст в гуи или msgbox не удаётся... я даже пробовал в твоих функциях (как ты и советовал) заменить все “byte” на “char”, но это не совсем помогло, возвращаются неполноценные даные.

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

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

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

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 04:46, 12-07-2007 | #144


Ветеран


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

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


amel27, я сделал как они AutoIt-овцы поступили с sqlite 8-))))
сделал библиотеку, размещающую setacl.exe в system32 8-)

-------
Tega AutoPatcher. Все обновления для XP в одном пакете. http://tega.ru/dirk/links.html


Отправлено: 13:06, 12-07-2007 | #145


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


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

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


Хочу попытаться автоматизировать настройку Outlook Express.
Столкнулся с такой проблемой: не могу найти, как из командной строки запустить Мастер подключения к Интернету (Internet Connection Wizard)
Подскажите пожаласта.
Был бы очень признателен за готовые скрипты настройки OE.

Отправлено: 12:56, 15-07-2007 | #146


Аватара для Maza Faka

Ветеран


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

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


Palych64
Цитата Palych64:
как из командной строки запустить Мастер подключения к Интернету
Код: Выделить весь код
Run (@ComSpec & " /c rundll32.exe netshell.dll,StartNCW","", @SW_HIDE)

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение


Отправлено: 09:11, 16-07-2007 | #147


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


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

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


Maza Faka,
спасибо конечно, но это не то...
Это запуск Мастера новых подключений (New Connection Wizard). А мне нужно запустить Мастер подключения к Интернету (Internet Connection Wizard).
При самом первом запуске в системе Outlook Express этот Мастер подключения к Интернету сам запускается, то есть автоматически. И там нужно заполнять "От кого", имена серверов POP, SMTP и так далее.
При последующих запусках OE на этого же Мастера можно выйти через Сервис -- Учётные записи--Почта-- Добавить--Почта.

Отправлено: 09:48, 16-07-2007 | #148


Аватара для Sanja Alone

Ищу Человека…


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

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


Palych64
Цитата:
как из командной строки запустить Мастер подключения к Интернету
Один из двух:
Код: Выделить весь код
Run(@ProgramFilesDir & '\Internet Explorer\Connection Wizard\icwconn1.exe')
Код: Выделить весь код
Run(@ProgramFilesDir & '\Internet Explorer\Connection Wizard\inetwiz.exe')
А если во время запуска OE, то:
Код: Выделить весь код
;сбрасываем флаг завершения ICW в реестре
RegWrite('HKEY_CURRENT_USER\Software\Microsoft\Internet Connection Wizard','Completed',"REG_BINARY","00000000")
Run(@ProgramFilesDir & '\Outlook Express\msimn.exe')
Цитата:
готовые скрипты настройки OE
Из самописного - OEsr.

-------
Sanja Alone's site (ConvRegToAU3, OEsr, RSA, AutoIt скрипты)


Отправлено: 10:45, 16-07-2007 | #149


Googler


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

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


Creat0R
Цитата:
я даже пробовал в твоих функциях (как ты и советовал) заменить все “byte” на “char”
в данном случае менять нельзя - возвращаться должно именно бинарное значение... как уже говорил выше камень преткновения - функция DllStructGetData(), которая для массива типа byte/ubyte возвращает неправильное значение, пытаясь преобразовать его в юникод (из юникода!)... Имхо надо с этим чего-то делать, может посмотришь на офсайте?.. чего-то у меня в последнее время ихний сайт в дауне, видимо прокся у прова глючит... да и с английским туговато... честно говоря, все жду пока они поправят этот баг.

З.Ы. по поводу CallBack я тут подумал - последний вариант может конфликтовать с DEP, так как там для размещения ассемблерных кодов используются функции размещения данных - хак в чистом виде.

З.З.Ы. еще один баг - в функции _StringRepeat(), катастрофически уменьшающий скорость в циклах, вместо:
Код: Выделить весь код
$sResult = $sResult & $sString
должно быть:
Код: Выделить весь код
$sResult &= $sString

Последний раз редактировалось amel27, 16-07-2007 в 12:35.


Отправлено: 11:47, 16-07-2007 | #150



Компьютерный форум 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




 
Переход