Что нового

[Данные, строки] Запись данных в текстовый файл после их ввода

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
marmisha
Можно еще так попробовать:
Код:
$sFileLogin = @ScriptDir & '\login.txt'
$sFilePass = @ScriptDir & '\pass.txt'
$sFileCheck = @ScriptDir & '\check.txt'
$iCount = 0
$hFileLogin = 0
$hFilePass = 0
$hFileCheck = 0

$hFileLogin = FileOpen($sFileLogin, 0)
If $hFileLogin = -1 Then
	_MyError($hFileLogin, 'FileOpen() ' & $sFileLogin)
EndIf
$hFilePass = FileOpen($sFilePass, 0)
If $hFilePass = -1 Then
	_MyError($hFilePass, 'FileOpen() ' & $sFilePass)
EndIf
$hFileCheck = FileOpen($sFileCheck, 1)
If $hFileCheck = -1 Then
	_MyError($hFileCheck, 'FileOpen() ' & $sFileCheck)
EndIf

While 1
	$iCount += 1
	$sLogin = FileReadLine($hFileLogin, $iCount)
	If @error = -1 Then
		_MyError(0, 'Всего строк: ' & $iCount - 1 & ' в файле: ' & $sFileLogin, 1)
	ElseIf @error > 0 Then
		_MyError(@error, 'FileReadLine() строка № ' & $iCount & ' в файле: ' & $sFileLogin)
	EndIf
	If Not $sLogin Then ContinueLoop
	$sPassword = FileReadLine($hFilePass, $iCount)
	If @error = -1 Then
		_MyError(0, 'Всего строк: ' & $iCount - 1 & ' в файле: ' & $sFilePass, 1)
	ElseIf @error > 0 Then
		_MyError(@error, 'FileReadLine() строка № ' & $iCount & ' в файле: ' & $sFilePass)
	EndIf
	If Not $sPassword Then ContinueLoop
	ToolTip($sLogin & ' : ' & $sPassword, 0, 0)

	;...
	;здесь Ваш код с Send() и MouseClick()
	;...

	If Not FileWrite($hFileCheck, $sLogin & ' : ' & $sPassword & @CRLF) Then
		_MyError(@error, 'FileWrite() Line: ' & $iCount & ' - ' & $sFileCheck)
	EndIf
	Sleep(100) ;только чтобы ToolTip успеть увидеть
WEnd

Func _MyError($i_Error = 0, $s_String = '', $i_What = 0)
	Local $s_Title = 'Error', $s_Message = 'Произошла ошибка.', $i_Flag = 16
	If $i_What Then
		$s_Title = 'Info'
		$s_Message = 'Строки в файле кончились.'
		$i_Flag = 64
		$i_Error = 0
	EndIf
	If $i_Error Then
		$s_Message &= @LF & 'Ошибка № ' & $i_Error
	EndIf
	If $s_String Then
		$s_Message &= @LF & $s_String
	EndIf
	MsgBox($i_Flag, $s_Title, $s_Message)
	FileClose($hFileLogin)
	FileClose($hFilePass)
	FileClose($hFileCheck)
	Exit
EndFunc   ;==>_MyError
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
zlo-kazan сказал(а):
А чем плохо это? :scratch:

Код:
For $i = 1 To UBound($aLogins)
Не плохо, просто так длиннее :D и опять же каждый вызов любой функции тормозит скорость выполнения скрипта(хотя здесь это конечно не критично), и
Код:
UBound($aLogins) - 1
а то тоже вылезет ошибка ;)
 
Верх