PDA

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


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 [48] 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78

Creat0R
23-09-2008, 08:53
Вот полный рабочий пример »
У меня после перекодировки вот что получается:

ЍеЂЀЂдобЋе доЅодЋ
(это из «Íåòðóäîâûå äîõîäû (http://forum.oszone.net/post-905387.html#post905387)»)

если выполнить перекодировку в UTF-8 в SciTE , тогда уже текст русского алфавита воспринимается неверно »
Нужно вырезать текст из SciT'а, перекодировать, а потом обратно вставить.

shyra1976
23-09-2008, 09:23
Creat0R,
например,я назимаю F5 и программа бежит,а я хочу провернть порограмму по шагово Нажат кнопку и переити к другои команде

Maza Faka
23-09-2008, 14:53
shyra1976
Используй функцию MsgBox() и её возвращаемое значение.

gregaz
23-09-2008, 20:12
У меня после перекодировки вот что получается:
ЍеЂЀЂдобЋе доЅодЋ
(это из «Íåòðóäîâûå äîõîäû») »
С помощью текстового фвйла или без

Получилось,наконец без текстового файла :
Пришлось сначала весь скрипт кодировать в UTF-8 with BOM
Затем ввести в него строки алфавита :
$line1 = 'àáâãäåæçèéêëìíîïðñòóôõö÷øùüûýþÿ'
$line2 = 'абвгдежзийклмнопрстуфхцчшщьыэюя'

Кстати получил и Íåòðóäîâûå äîõîäû - это Нетрудовые доходы

При кодировке скрипта в UTF-8 полчилась абракадабра ЍеЂЀЂдобЋе РґРѕР…РѕРґР‹
Спасибо за консультацию

Creat0R
23-09-2008, 22:04
С помощью текстового фвйла или без »
И "с" и "без".

Получилось,наконец без текстового файла »
Запости скрипт если не сложно, прикрепи к сообщению (в архиве, au3 не поддерживается :) ). Просто интересно как оно перекодировалось.

gregaz
24-09-2008, 07:26
Запости скрипт если не сложно, прикрепи к сообщению (в архиве, au3 не поддерживается ). Просто интересно как оно перекодировалось. »

Creat0R, отпишись как на другом компе работает ?
Вот здесь :

Creat0R
25-09-2008, 17:43
отпишись как на другом компе работает ? »
Отлично!

Вот немного переделал (можно сказать привёл в читабельный вид :) ):


$sString = 'Iao?oaiaua aioiau'
$sDecodedString = _StringDecode($sString)

MsgBox(64, "", $sString & @LF & $sDecodedString)

Func _StringDecode($sString)
Local $sRetStr, $iMidleStr, $iMidleStr_Pos, $iMidleStr_Chck

Local $sDecodeStr = 'aaaaaa?ceeeeiiii?nooooo?ouuuy?y'
Local $sEncodeStr = 'абвгдежзийклмнопрстуфхцчшщьыэюя'

For $i = 1 To StringLen($sString)
$iMidleStr = StringMid($sString, $i, 1)
$iMidleStr_Pos = StringInStr($sDecodeStr, $iMidleStr)

If $iMidleStr_Pos = 0 Then
$iMidleStr_Chck = $iMidleStr
Else
$iMidleStr_Chck = StringMid($sEncodeStr, $iMidleStr_Pos, 1)
EndIf

; Замена строчных букв на заглавные
;If Asc($iMidleStr) < 91 And Asc($iMidleStr) > 64 Then $iMidleStr_Chck = Chr(Asc($iMidleStr_Chck)-32)
If StringIsUpper($iMidleStr) Then $iMidleStr_Chck = StringUpper($iMidleStr_Chck)

$sRetStr &= $iMidleStr_Chck
Next

Return $sRetStr
EndFunc

gregaz
25-09-2008, 20:40
Вот немного переделал (можно сказать привёл в читабельный вид ): »
Да , уж !
А я как-то не не вспомнил про StringIsUpper и изобретал велосипед , кстати там у меня-баг надо передвинуть это только на изменяемый (русский) текст , а здесь - вполне на месте.
Классно !

morgan1991
26-09-2008, 11:35
Помогите люди добрые.
Написал скрипт вот такой:
Global $relise = IniRead("ftp://sait.ru/relisprog/relisprog.ini", "realmlist", "relise", "0")
msgbox(0, "", $relise)
Почему он не хочет считывать данные с ини файла?
Как это исправить?

Maza Faka
26-09-2008, 13:14
morgan1991
Ты что, хочешь прочитать файл расположенный на сайте? Сначала скачай его функцией InetGet(), а затем уже читай :)

NikLok
26-09-2008, 23:53
Пытаюсь удалить файл:
FileDelete(@WindowsDir & "\mui\FALLBACK\0419\shell32.dll.mui")

Ничего не получается - система блокирует его!

У кого нить есть код снятия этой блокировки?!

Creat0R
27-09-2008, 01:26
система блокирует его! »
Видимо нужно отключить сервис «Восстановление системы».
Можно также попробовать снять атрибуты с этого файла:

FileSetAttrib(@WindowsDir & "\mui\FALLBACK\0419\shell32.dll.mui", "-SRH")
FileDelete(@WindowsDir & "\mui\FALLBACK\0419\shell32.dll.mui")

prokazzza
27-09-2008, 11:16
Никто не знает почему не работают Autoit скрипты (exe) на T-13?

Medic84
27-09-2008, 18:22
prokazzza, Скорее всего не некоторых хватает системных файлов которые используются в Autoit (это мое мнение)

Creat0R
01-10-2008, 14:41
Не знаю на сколько будет полезно, но вот прототип функции _StringRegExpReplaceCallBack(), на идею натолкнул запрос в баг-трекере (http://svn.autoitscript.com/trac/ticket/588) офф. форума:


$sString = "This is a Test, a _StringRegExpReplaceCallBack test"
$sRetVar = _StringRegExpReplaceCallBack($sString, "(?i)\bt[^ ]+", "_UpperMatches")

MsgBox(64, "Results", StringFormat("Было:\n%s\n\nСтало:\n%s\n\n\n" & _
"Все слова начинающиеся с буквы <T> преобразованы в верхний регистр при помощи a.k.a Callback функции (_UpperMatches()) :)", $sString, $sRetVar))

Func _StringRegExpReplaceCallBack($sTest, $sPattern, $sFunction)
Local $aMatches = StringRegExp($sTest, $sPattern, 3)
Local $sReplace

For $i = 0 To UBound($aMatches)-1
$sReplace = Call($sFunction, $aMatches[$i])
If @error Then Return SetError(1, 0, $sTest)

$sTest = StringReplace($sTest, $aMatches[$i], $sReplace, 1, 1)
Next

Return $sTest
EndFunc

Func _UpperMatches($sMatch)
Return StringUpper($sMatch)
EndFunc

.:TimoXa:.
02-10-2008, 19:47
Функция

Send ( "!{F2}")

Выполняется не всегда, как заставить её выполнятся 100%??

Creat0R
02-10-2008, 22:58
Функция
Send ( "!{F2}")
Выполняется не всегда »
Как это определяется?

.:TimoXa:.
02-10-2008, 23:19
Вообще у меня используются подряд 2 функции нажатие АЛТ+Ф1 и АЛТ+Ф2, в итоге в какой то момент происходит нажатие АЛТ+Ф1 потом Ф2 или наоборот Ф1 и АЛТ+Ф2...редко выскакивают Ф2 и Ф1...хотелось бы понять от чего это происходит...и как от этого избавится...

Creat0R
02-10-2008, 23:50
используются подряд 2 функции нажатие АЛТ+Ф1 и АЛТ+Ф2, в итоге в какой то момент происходит нажатие АЛТ+Ф1 потом Ф2 или наоборот Ф1 и АЛТ+Ф2 »
А если между ними паузу поставить? возможно там, где эти клавиши срабатывают, действие вызываемое по «Alt+F1» срабатывает медленнее чем действие по «Alt+F2», ведь команда Send() не ждёт ничего (ей не важно что будет выполнено в последствии), её задача всего лишь нажать указанные клавиши :)

FaustPatron
03-10-2008, 14:38
Многоуважаемые знатоки! Внимание вопрос от ламера.

Я пишу скрипт для автоматизации процесса вставки\копирования на конкретно взятой страничке сети (online). Скрипт готов и работает но "пробегает" он по текстовым полям при помощи нажатия {TAB}. Мне бы очень хотелось сделать вставку текста в текстовое поле непосредственно указывая элемент control, но AutoIt Window Info не говорит ни его ID и даже не указывает его текст по умолчанию (хотя он есть). Причем Class элемента control совпадает с классом самого окна браузера (MozillaUIWindowClass). Что мне делать и как быть?

Возможно кто-нибуть подскажет где мне искать ответ на вопрос, т.к. поиском ничего не могу найти по теме вопроса

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




© OSzone.net 2001-2012