Недавние сообщения

Страницы: 1 2 [3] 4 5 ... 10
21
Общие вопросы по AutoIt / Re: Редактирование XML файла
« Последний ответ от Grizli Отправлен Июнь 20, 2018, 16:28:55 »
InnI
Вы меня не первый раз уже выручаете. Пример отлично работает. Правда для меня сильно непривычный. Если бы я имел два решения своих вопроса то мой код редактирования файла был бы ну не меньше чем в 4 раза больше вашего. Снимаю шляпу.


Код: AutoIt [Выделить]
For $oPF In $oPacFacts
  $oPacElements.appendChild($oPF)
Next

как эти 3 строчки выбирают нужные строчки удаляют их и добавляют там где нужно.... ?
22
Стол заказов / Как прокрутить окно в зону видимости элемента в Google Chrome
« Последний ответ от dr.room Отправлен Июнь 20, 2018, 15:41:48 »
Версия AutoIt: 3.
AutoIt Version: 3.3.14.3
Описание:
Всем привет
Подскажите как можно выполнить прокрутку окна, чтобы нужный элемент оказался в зоне видимости окна  Google Chrome
Примечания:
Спасибо
23
Alofa, я как раз брал примеры по вашей ссылке.
После ответа AZJIO,  сделал решение, похожее на ваш пример.
Просто думал, что есть более изящное решение, например за один проход

(нажмите для показа/скрытия)
24
Общие вопросы по AutoIt / Re: Неизвестная папка на пути к исполняющему файлу
« Последний ответ от gunter123 Отправлен Июнь 20, 2018, 15:11:46 »
Код: AutoIt [Выделить]
#include <Array.au3>
#include <File.au3>

$sPath = _GetPath()

Func _GetPath()
   Local $aList = _FileListToArray(@ProgramFilesDir & '\1c', '*', 2)
   If @error Then Return SetError(2, 0, 0)

   For $i = UBound($aList) -1 To 0 Step -1
      Local $aSplit = StringSplit($aList[$i], '.', 2)
      If @error OR UBound($aSplit) <> 4 Then
         _ArrayDelete($aList, $i)
      EndIf
   Next

   If UBound($aList) = 0 Then Return SetError(1, 0, 0)
   Return @ProgramFilesDir & '\1c\' & $aList[UBound($aList)-1] & '\bin\file.exe'
EndFunc
 

25
Общие вопросы по AutoIt / Re: Редактирование XML файла
« Последний ответ от InnI Отправлен Июнь 20, 2018, 14:47:50 »
Grizli
Не забудьте сделать резервную копию файлов

Код: AutoIt [Выделить]
$sFilePath = @ScriptDir & "\4280_10.06.S_016 - копия.XML"
If Not FileExists($sFilePath) Then Exit ConsoleWrite("!> Файл не найден" & @CRLF)

$oXML = ObjCreate("Microsoft.XMLDOM")
If Not IsObj($oXML) Then Exit ConsoleWrite("!> Ошибка создания объекта XML" & @CRLF)
$oXML.load($sFilePath)

$oPacElements = $oXML.SelectSingleNode("//pac:elements")
If Not IsObj($oPacElements) Then Exit ConsoleWrite("!> Ошибка поиска элемента <pac:elements>" & @CRLF)

$oPacFacts = $oPacElements.SelectNodes("//pac:fact")
If Not $oPacFacts.length Then Exit ConsoleWrite("!> Элементы <pac:fact> не найдены" & @CRLF)

For $oPF In $oPacFacts
  $oPacElements.appendChild($oPF)
Next

$oXML.save(@ScriptDir & "\test.xml")

26
Код: AutoIt [Выделить]
; Пример переработан и слизан отсюда: http://autoit-script.ru/index.php?topic=12322.0
; Почитайте эту тему

#Include <GUIConstants.au3>

GUICreate("MyGUI", 200, 50)
$Input = GUICtrlCreateInput("", 15, 15, 170)
GUIRegisterMsg($WM_COMMAND, "_WM_COMMAND")
GUISetState()

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

Func _WM_COMMAND($hWnd, $iMsg, $wParam, $lParam)
    Switch BitAND($wParam, 0xFFFF)
        Case $Input
            Switch BitShift($wParam, 16)
                Case $EN_CHANGE
                    Local $Data = GUICtrlRead($Input)
                    If StringLen($Data) = 1 Then
                        $Data = StringRegExpReplace($Data, '[^+-]', '')
                    Else
                        $Data = StringRegExpReplace($Data, '(.+)\D', '$1')
                    EndIf
                    GUICtrlSetData($Input, $Data)
            EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
EndFunc

27
Общие вопросы по AutoIt / Re: Редактирование XML файла
« Последний ответ от Grizli Отправлен Июнь 20, 2018, 14:18:38 »
вставляется строка в нужное место, удаляется из неправильного в конце файла. в первом сообщении темы на скриншоте стрелкой нарисовал откуда и куда должна перемещаться строка.
файл после правки прикрепил к сообщению.
28
Общие вопросы по AutoIt / Re: Неизвестная папка на пути к исполняющему файлу
« Последний ответ от Alofa Отправлен Июнь 20, 2018, 14:04:14 »
У вас
Код: AutoIt [Выделить]
что показывает?
29
Общие вопросы по AutoIt / Re: Редактирование XML файла
« Последний ответ от gunter123 Отправлен Июнь 20, 2018, 13:31:10 »
Зачем вставлять строку </pac:fact>, а потом ее же удалять?  :think:
Цитировать
после каждой строки  </pac:lastChanging>
вставить строку </pac:fact> и в конце файла удалить такое количество строк </pac:fact>, какое было расставлено по файлу

Скиньте, пожалуйста, файл до и после изменения.
30
Общие вопросы по AutoIt / Re: Неизвестная папка на пути к исполняющему файлу
« Последний ответ от Dobrodei Отправлен Июнь 20, 2018, 13:25:48 »
... 'Ни один из файлов или каталогов не соответствует маске поиска'...
Вы проверьте какой путь вам нужен и какой путь прописан в моем скрипте. В первом посте у вас в пути присутствует папка "1c", а в другом уже "1cv8", вы уж определитесь.
Путь я сверяю перед компилированием, там проблема с алгоритмом поиска.


Добавлено: Июнь 20, 2018, 13:32:20
скрипт Гюнтера работает, как встроить его?  :think:
Код: AutoIt [Выделить]
#include <Array.au3>
#include <File.au3>

$aList = _FileListToArray(@ProgramFilesDir & '\1cv8', '*', 2)
If @error Then Exit MsgBox(4096, "", "Ошибка")

For $i = UBound($aList) -1 To 0 Step -1
   $aSplit = StringSplit($aList[$i], '.', 2)
   If @error OR UBound($aSplit) <> 4 Then
      _ArrayDelete($aList, $i)
   EndIf
Next

If UBound($aList) > 0 Then MsgBox(4096, '', @ProgramFilesDir & '\1cv8\' & $aList[UBound($aList)-1] & '\bin\chdbfl.exe')

Страницы: 1 2 [3] 4 5 ... 10