Добрый день.
имеем функцию
По задумке, функция переходит на страницу(группа в вк),, ссылка на которую берётся из таблицы, активирует поле для ввода текста, вставляет текст с переменной и нажимает отправить
Так вот, ControlSend вставляет информацию некорректно, иногда не полностью, ещё и сам отправляет по 2-3 раза (не нажимая кнопку "отправить").
Почему так? И как исправить?
имеем функцию
Код:
Func start()
$kolvo = _GUICtrlListView_GetItemCount($ListView)
$n = 0
do
$a = _GUICtrlListView_GetItemTextString($ListView, $n)
sleep(1000)
$n = $n + 1
_IENavigate ($oIE, $a )
sleep(1000)
; ToolTip('ввод' ,0,1)
_IETagClassClick($oIE, 'div', 'input_back_content', 'Написать сообщение..')
sleep(1000)
$text2 = GUICtrlRead($text)
sleep(1000)
ControlSend ( $winname, '', '', $text2)
sleep(5000)
$text2 =
;ToolTip($kolvo ,0,1)
sleep(500)
sleep(1000)
;_IEAEAction($oPCode, "click"); это должно было нажимать кнопку "отправить", а на деле до него не доходит, отправляет ControlSend
Until $n = 1;$kolvo
EndFunc
Func _IETagClassClick($o_Obj, $s_TagName, $s_ClassName, $s_Innertext = '') ;взята с форума
Local $o_Tags
If Not IsObj($o_Obj) Then Return SetError(1)
If (Not $s_TagName Or Not $s_ClassName) Then Return SetError(1)
$o_Tags = _IETagNameGetCollection($o_Obj, $s_TagName)
If @error Then Return SetError(1)
For $o_Tag In $o_Tags
If $o_Tag.ClassName == $s_ClassName Then
If $s_Innertext Then
If $o_Tag.innertext == $s_Innertext Then
_IEAction($o_Tag, 'click')
If @error Then Return SetError(1)
_IELoadWait($o_Obj)
If @error Then Return SetError(1)
Return SetError(0)
EndIf
Else
_IEAction($o_Tag, 'click')
If @error Then Return SetError(1)
_IELoadWait($o_Obj)
If @error Then Return SetError(1)
Return SetError(0)
EndIf
EndIf
Next
Return SetError(2)
EndFunc ;==>_IETagClassClick
По задумке, функция переходит на страницу(группа в вк),, ссылка на которую берётся из таблицы, активирует поле для ввода текста, вставляет текст с переменной и нажимает отправить
Так вот, ControlSend вставляет информацию некорректно, иногда не полностью, ещё и сам отправляет по 2-3 раза (не нажимая кнопку "отправить").
Почему так? И как исправить?