AZJIO
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Cosmogor строчку Код: $sStri = StringTrimLeft(_TempFile(), StringInStr(_TempFile(), "\", 0, -1)) | нужно было поставить над строкой Код: If @ScriptName = "0.exe" Then | по причине обьявления переменной внутри условия совпадения, то есть если @ScriptName = "0.exe", тогда обьявляем переменную и далее команды по коду, а иначе выдаём месагу, так если сработает "иначе", то переменная $sStri нигде не определяется. Поэтому $sStri нужно определить либо до условия, либо дважды в условии, второй раз после Else. Код: #include <File.au3> $sStri = StringTrimLeft(_TempFile(), StringInStr(_TempFile(), "\", 0, -1)) ; переменная определена до условия If @ScriptName = "0.exe" Then FileCopy (@ScriptFullPath, @TempDir & "\" & $sStri, 1) Run(@TempDir & "\" & $sStri) MsgBox(0, "","" & @TempDir & "\" & $sStri & "") EXIT Else ; MsgBox(0, "","" & @TempDir & "\" & $sStri & "") EndIf EXIT ; либо так: #include <File.au3> If @ScriptName = "0.exe" Then FileCopy (@ScriptFullPath, @TempDir & "\" & $sStri, 1) Run(@TempDir & "\" & $sStri) MsgBox(0, "","" & @TempDir & "\" & $sStri & "") EXIT Else $sStri = StringTrimLeft(_TempFile(), StringInStr(_TempFile(), "\", 0, -1)) ; переменная определена для условия Else ; MsgBox(0, "","" & @TempDir & "\" & $sStri & "") EndIf EXIT | Команда EXIT перед Else лишняя, так как по выходу из условия EndIf опять натыкаемся на EXIT, так что выход из скрипта в любом случае. | Всего записей: 4560 | Зарегистр. 03-05-2006 | Отправлено: 13:08 15-03-2010 | Исправлено: AZJIO, 13:17 15-03-2010 |
|