Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для kaster

Старожил


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

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


Цитата ya158:
То есть функция будет вызываться не 4 раза, а 5, причём пятый раз с ненужными параметрами. Или я в чём-то не прав? »
да. ты прав. я нет
у меня, к сожалению, часто такие ошибки проскакивают с +- 1 на цикле
вот правильный код
Код: Выделить весь код
$sPath = 'd:\1.txt';<--- Путь до текстового файла с числами
;$sSep = '@TAB';<--- Разделитель, раскоментировать/дописать нужный, закоментировать остальные
;$sSep = ' '
;$sSep = ';'
$sSep = ','
$sAppPath = 'c:\1.exe';<--- Путь до программы для запуска с ключами
$hFile = FileOpen($sPath, 0);<--- Открываем файл для чтения
$iIND = 1;<--- Индикатор выхода из цикла
While 1;<--- Цикл
    $sLine = FileReadLine($hFile);<--- Считываем файл строка за строкой
    $iIND = @error;<--- Проверяем не конец ли файла
    If $iIND = -1 Then ExitLoop;<--- Если конец, дальще не обратаываем файл
    $aLine = StringSplit($sLine, $sSep);<--- Разделяем строку разделителем
    If $aLine[0] = 1 Then;<--- Проверка на наличие второго числа (отсутствие)
        $iParam1 = $aLine[1];<--- Первый параметр
        $iParam2 = 1;<--- Второй параметр
    Else;<--- Проверка на наличие второго числа (присутствие)
        $iParam1 = $aLine[1];<--- Первый параметр
        $iParam2 = $aLine[2];<--- Второй параметр
    EndIf
    MsgBox ( 0, $iIND, 'iparam1 = ' & $iParam1 & @CRLF & 'iparam = ' & $iParam2)
    ;RunWait(@ComSpec & ' /c "' & $sAppPath & '" ' & $iParam1 & ' ' & $iParam2);<--- Запуск программы с ключами.
WEnd
Цитата ya158:
Так же было бы неплохо в начале этого текстового файла прописать несколько текстовых строк, которые в скрипте присвоились бы переменным. Например: »
Если это нужно делать до того как выполнится скрипт, то нужно открыть вначале файл для чтения, скопировать содержимое в другой файл или б.обмена, закрыть файл, снова открыть для записи с флагом перезаписи, записать нужные строки, добавить пустую строку, открыть другой файл, взять содержимое поместить снова в первый файл, закрыть второй файл, закрыть первый файл, открыть первый файл на чтения и провести вышеописанные манипуляции. если я правильно конечно понял.

-------
Русское сообщество пользователей AutoIt
autoit@conference.jabber.ru - Конференция на jabber.ru

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

Отправлено: 01:24, 11-09-2009 | #4