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

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

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

Старожил


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

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


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





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


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

Помогите пожалуйста. Нужен маленький скриптик для решения некоторых рутинных задачь.
Вот что нужно сделать последовательно:

1) в папке DIR1 находим и удаляем файлы в названии которых присутствует text_1
2) в папке DIR2 находим xxx.sif и удаляем строки, в которых присутствует text_1
3) в папке DIR3 находим xxx.inf и добавляем в его секцию [XXX] несколько строчкек (text_2, text_3, ..., text_n)
4) в папке DIR4 находим yyy.inf ищем в его секции [YYY] text_4 и заменяем его на text_5
5) сохраняем все изменения и выводим отчёт о проделанной работе :-)

Заранее благодарен.

Отправлено: 05:05, 03-12-2006

 

Googler


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

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


Creat0R
Цитата:
что-то так и не понял, как распознавать и соответственно добавлять неопознанные стили
ты разве не понял принцип работы скрипта?.. Если в тексте после всех замен остались XML-теги, то считается что есть неопознанные стили... соответственно, сам себя он не сможет обработать, так как не сможет отличить XML-тег от строки сравнения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:07, 25-05-2007 | #431



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

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


Аватара для Creat0R

Must AutoIt


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

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


amel27
Цитата:
соответственно, сам себя он не сможет обработать, так как не сможет отличить XML-тег от строки сравнения.
Теперь всё ясно, большое спасибо, парадокс однако получается

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

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

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


Отправлено: 10:40, 25-05-2007 | #432


Ветеран


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

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


Creat0R Спасибо!

VadikanМожет этот скрипт прямо к форуму прикурутить. Вставил код и он принулительно разукрасился!?

Отправлено: 12:06, 25-05-2007 | #433


Googler


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

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


Вложения
Тип файла: 7z ticker.7z
(4.9 Kb, 13 просмотров)

Creat0R
Цитата:
если есть интерес могу попробовать на выходных

Есть , спасибо
как ни странно получилось, и выглядит многообещающе...
Код: Выделить весь код
#include <GUIConstants.au3>
; ГУИ
Opt("GuiOnEventMode", 1)
$hWndMain=GUICreate("Test")
GUISetOnEvent(-3, "Quit")
GUICtrlCreateMenu("Test Menu")
GUISetState()
; Регистрируем сообщение
GUIRegisterMsg($WM_USER+1, "Tick")
; Открываем DLL и возвращаем указатель на функцию
$hDll = DllOpen("ticker.dll")
$hProc = DllCall($hDll,"int","TickerPtr")
; Структура для параметров "генератора сообщений"
$parms = DllStructCreate ("hwnd;int;long;long" )
  ; Установка требуемых параметров
DllStructSetData ($parms, 1, $hWndMain) ; хэндл главного окна
DllStructSetData ($parms, 2, $WM_USER+1) ; ID сообщения
DllStructSetData ($parms, 3, 300) ; таймаут между сообщениями
DllStructSetData ($parms, 4, 0) ; сколько раз отправить сообщение
; Запускаем поток
$res = DllCall("kernel32.dll","int","CreateThread","int",0,"int",0,"ptr",$hProc[0],"int",DllStructGetPtr($parms),"int",0,"int_ptr",0)
; Пустой цикл
While 1
    Sleep (1000)
Wend
; Функция обработки события
Func Tick ($hWnd, $iMsg, $WParam, $LParam)
    ConsoleWrite (Number($WParam) & @CRLF)
EndFunc
; Снова ГУИ
Func Quit()
    Exit
EndFunc
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:57, 25-05-2007 | #434


Аватара для Creat0R

Must AutoIt


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

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


amel27
Цитата:
как ни странно получилось
Я не сомневался

Старая проблема со скачакой атачментов всплыла, файл не скачивается - Пробовал DMaster'ом, пробовал через IE качалку, через “Сохранить по ссылке как”, но архив скачивается повреждённый (или вовсе не архив а php файл).

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

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

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


Отправлено: 00:10, 26-05-2007 | #435


Googler


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

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


Creat0R
Цитата:
Старая проблема со скачакой атачментов всплыла, файл не скачивается
странно, на работе через прокси в IE качает, дома через диалап только DMastrer'ом... так что надежда есть, попробуй FlashGet'ом

линк: http://www.sendspace.com/file/iaq1xh

Отправлено: 06:06, 26-05-2007 | #436


Аватара для Creat0R

Must AutoIt


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

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


amel27
Спасибо, работает!

Правда при нажатии на кнопку закрытия/сворачивания и её удерживания (на месте, если удерживая и двигать мышку то нормально), то счётчик останавливается - но это не критично, а так работает... я так понял это вызваная Dll'ка посылает постоянно зарегистрированное сообщения в окно ГУИ, и этим самым “провоцируя” запуск нужной функции (зарегистрированной), так?
Хорошо что сама Dll'ка не большая, обычно они бывают большими

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

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

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


Отправлено: 23:36, 26-05-2007 | #437


Googler


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

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


Creat0R
Цитата:
я так понял это вызваная Dll'ка посылает постоянно зарегистрированное сообщения в окно ГУИ, и этим самым “провоцируя” запуск нужной функции (зарегистрированной), так?
угу, самопальный AdLib ... имхо в исходнике и без комментов все прозрачно
Цитата:
Хорошо что сама Dll'ка не большая, обычно они бывают большими
FreeBasic рулит!

Отправлено: 03:37, 27-05-2007 | #438


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


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

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


Системные цвета
Код: Выделить весь код
Const $COLOR_SCROLLBAR = 0 ; - цвет полосы прокрутки
Const $COLOR_BACKGROUND = 1 ; - цвет фона окна
Const $COLOR_ACTIVECAPTION = 2 ; - цвет заголовка активного окна
Const $COLOR_INACTIVECAPTION = 3 ; - цвет заголовка неактивного окна
Const $COLOR_MENU = 4 ; - цвет меню
Const $COLOR_WINDOW = 5 ; - цвет окна
Const $COLOR_WINDOWFRAME = 6 ; - цвет обрамления окна
Const $COLOR_MENUTEXT = 7 ; - цвет текста меню
Const $COLOR_WINDOWTEXT = 8 ; - цвет текста окна
Const $COLOR_CAPTIONTEXT = 9 ; - цвет текста в заголовке окна

Const $COLOR_ACTIVEBORDER = 10 ; - цвет активной границы окна
Const $COLOR_INACTIVEBORDER = 11 ; - цвет неактивной границы окна
Const $COLOR_APPWORKSPACE = 12 ; - цвет рабочего места окна
Const $COLOR_HIGHLIGHT = 13 ; - цвет подсветки
Const $COLOR_HIGHLIGHTTEXT = 14 ; - цвет подсвеченного текста
Const $COLOR_BTNFACE = 15 ; - цвет лицевой части кнопки
Const $COLOR_BTNSHADOW = 16 ; - цвет тени кнопки
Const $COLOR_GRAYTEXT = 17 ; - цвет "серого" текста
Const $COLOR_BTNTEXT = 18 ; - цвет текста в кнопке
Const $COLOR_INACTIVECAPTIONTEXT = 19 ; - цвет текста в заголовке неактивного окна

Const $COLOR_BTNHIGHLIGHT = 20 ; - цвет текущей кнопки

;~ Получаем цвет лицевой части кнопки на текущий момент:
$OldColor = _GetSysColor($COLOR_BTNFACE)
;~ Задаём красный цвет для лицевой части кнопки:
_SetSysColor($COLOR_BTNFACE, 0xFF0000)
;~ тайм-аут 5 секунд
Sleep(5000)
;~ Восстанавливаем полученный ранее цвет
_SetSysColor($COLOR_BTNFACE, $OldColor)

############# -= ФУНКЦИИ =- #############

;~ Позволяет получать системные цвета, определённые текущими параметрами оформления
Func _GetSysColor($nIndex)
	$BGRColor = DllCall("user32.dll", "long", "GetSysColor", "long", $nIndex)
	$BGR = Hex ($BGRColor[0],6 )
	$RGB = "0x" & StringRight($BGR,2) & StringMid($BGR,3,2) & StringLeft($BGR,2)
	Return $RGB
EndFunc
 
;~ Позволяет установить новый цвет для указанного элемента оформления
Func _SetSysColor($nIndex, $nRGBColor)
	$RGB = Hex($nRGBColor,6 )
	$BGR = "0x" & StringRight($RGB,2) & StringMid($RGB,3,2) & StringLeft($RGB,2)
	Local $structColor = DllStructCreate("udword")
	Local $structIndex = DllStructCreate("udword")
	DllStructSetData($structIndex, 1, $nIndex)
	DllStructSetData($structColor, 1, $BGR)
	DllCall("user32.dll", "long", "SetSysColors", "long", 1, "ptr", DllStructGetPtr($structIndex), "ptr", DllStructGetPtr($structColor))
EndFunc

Последний раз редактировалось Diamond, 29-05-2007 в 08:45. Причина: Поправил, теперь обе функции работают с RGB :)

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

Отправлено: 10:58, 28-05-2007 | #439


Аватара для Creat0R

Must AutoIt


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

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


Diamond
Спасибо, давно искал что-то подобное

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

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

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


Отправлено: 13:50, 28-05-2007 | #440



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Открывая 7z архив пишет не удаётся открыть как архив. Можно ли его восстановить? DreDo Хочу все знать 4 01-12-2009 18:54
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:. Vadikan AutoIt 1543 18-01-2009 10:46
[архив - Часть 2] AutoIt скрипты Vadikan AutoIt 985 21-01-2008 09:58
[Архив - Часть 1.2] AutoIt скрипты Dirk Diggler AutoIt 505 02-12-2006 11:00
[Архив - Часть 1.1] AutoIt скрипты EgOrus AutoIt 335 04-02-2006 16:58




 
Переход