1 (изменено: Limon4ek, 2018-05-08 23:43:04)

Тема: AHK: if FileExist()

Доброго времени суток. Суть трабла:

if FileExist("/file.file"){
...
}

вот такое не пройдёт, ибо в аргументах нужно указывать полный путь, но положение скрипта иногда меняется между дисками и следовательно полный путь тут не пройдёт. Сокращение при помощи %A_scriptdir% и любых других переменных не работает.

2

Re: AHK: if FileExist()

Что Вы этим хотели сказать? У меня работает с относительным путём.

IF FileExist("1/file.file"){
SoundBeep
}

3 (изменено: Limon4ek, 2018-05-08 23:08:12)

Re: AHK: if FileExist()

ypppu, странно, у меня просто всегда возвращает FALSE. Значится это у меня на аппаратном уровне.

4

Re: AHK: if FileExist()

SetWorkingDir %A_ScriptDir%

5

Re: AHK: if FileExist()

if FileExist(A_ScriptDir . "/file.file")
{
MsgBox, Hello World
}

6

Re: AHK: if FileExist()

Malcev, этот алиас же по умолчанию, или нет? Да и дело не в этом, там нельзя вообще использовать переменные.

7

Re: AHK: if FileExist()

powercat,тогда оно не воспринимает a_scriptdir как переменную.

8 (изменено: MandarinKa02, 2018-05-08 23:45:46)

Re: AHK: if FileExist()


;main code
FileAppend, какой-то текст, % A_ScriptDir "\file.txt"
if(Exist("file.txt"))
	msgbox #1
if(Exist(A_ScriptDir "\file.txt"))
	msgbox #2
return





Exist(path) {
	ifexist, % path
		return 1
	return 0
}

9

Re: AHK: if FileExist()

Limon4ek пишет:

Malcev, этот алиас же по умолчанию, или нет?

Нет. По умолчанию A_WorkingDir, а она может отличаться от A_ScriptDir.

Limon4ek пишет:

там нельзя вообще использовать переменные.

На счёт этого не понял.

10

Re: AHK: if FileExist()

Malcev, переменные воспринимаются как путь(я могу попробовать прописать %a_scriptdir% в среду винды.), если без кавычек при компиляции ошибка "illegal symbol"

11

Re: AHK: if FileExist()

Просто пропишите в начале скрипта:

SetWorkingDir %A_ScriptDir%