Но по какой причине файл не открывается? Если его нет, то он создается...а если есть....то всё равно должен пересоздаться.
Выбивает именно на первом fopen, значит тхт или открыт в это время, или занят как-то.
Конечно, проверка открытия решит проблему с вылетом, но логика скрипта иногда будет сбоить.
Может это болталка какой-то неправильный лог генерирует...
51. Dantes3000 - 12 Апреля, 2018 - 18:39:39 - перейти к сообщению
52. Kibor - 12 Апреля, 2018 - 19:06:52 - перейти к сообщению
Dantes3000 пишет:
Может это болталка какой-то неправильный лог генерирует...
не должно.
проверил, вырезав все что не запускается.
все норм.
логирование сделайте.
53. burn - 31 Мая, 2018 - 04:24:49 - перейти к сообщению
Kibor пишет:
надо просто выставить права нужные на компьютере.
А возможно ли реализовать чтобы:
Программа бота выполнялась не только по порядку но и параллельно части из этой же программы?
Т.е мне нужно чтобы бот открыл файл тхт, скопировал в буфер первую строку. Далее вставил из буфера в другую программу в определённое поле (хотя бы по координатам мыши), программа произвела расчёт с вставленным значением. А после бот переходит ко второй строке из тхт, и т.д
Попробовал с вашим примером:
PHP:
string preiemnik;
//Чтение по целой строке
if (fopen ("c:\5.txt", "r")!=0)//открываем файл для чтения "r"
{//если открылся
l:if (freadline(preiemnik)!=0)//Читаем по целой строке пока не конец файла
{
messagebox(preiemnik);
goto l;
}
fclose();//закрываем файл
}
string preiemnik;
//Чтение по целой строке
if (fopen ("c:\5.txt", "r")!=0)//открываем файл для чтения "r"
{//если открылся
l:if (freadline(preiemnik)!=0)//Читаем по целой строке пока не конец файла
{
messagebox(preiemnik);
goto l;
}
fclose();//закрываем файл
}
Но после получения первой строки выполнение кода останавливается пока не нажмешь ок в всплывающем окошке и не закончатся строки в файле тхт. Как итог бот может вставить только данные из последней строки файла((
54. Zireael - 31 Мая, 2018 - 04:49:32 - перейти к сообщению
CODE:
string text[1000]; // файл не должен превышать 1000 строк
string path="C:\Users\abc\Desktop\111.txt"; // путь к файлу
int row=0; // переменная, в которую запишется количество строк в файле
if (fopen(path, "r" ) !=0) // если файл открылся
{
for(int i=0; freadline(text[i])!=0; i++)row++; // читаем по строке до конца файла
fclose(); // закрываем файл
messagebox("Cтрок в файле: "+format(row));
for(i=0; i<row; i++) // цикл для всех строк из файла
{
messagebox(text[i]);
messagebox("тут пишем нужные действия"); // или вызываем функцию с действиями
}
}
string path="C:\Users\abc\Desktop\111.txt"; // путь к файлу
int row=0; // переменная, в которую запишется количество строк в файле
if (fopen(path, "r" ) !=0) // если файл открылся
{
for(int i=0; freadline(text[i])!=0; i++)row++; // читаем по строке до конца файла
fclose(); // закрываем файл
messagebox("Cтрок в файле: "+format(row));
for(i=0; i<row; i++) // цикл для всех строк из файла
{
messagebox(text[i]);
messagebox("тут пишем нужные действия"); // или вызываем функцию с действиями
}
}
55. burn - 31 Мая, 2018 - 10:58:39 - перейти к сообщению
Все также нужно жать ок, и вставляет только последнюю строку.
56. burn - 01 Июня, 2018 - 04:09:14 - перейти к сообщению
Zireael пишет:
CODE:
messagebox(text[i]);
messagebox("тут пишем нужные действия"); // или вызываем функцию с действиями
}
}
messagebox(text[i]);
messagebox("тут пишем нужные действия"); // или вызываем функцию с действиями
}
}
Второй messagebox обязателен? И в нем нужно писать действия?
Допустить мне надо переместить мышь, кликнуть поле и вставить из буфера. Как это должно выглядеть?
CODE:
Messagebox("mouse(left, 215, 175);
Key(ctrl+v);//наглядно")
Messagebox("mouse(left, 215, 175);
Key(ctrl+v);//наглядно")
Или если на перемещение мыши и нажатие ctrl+v стоит функция(с именем vstavka) то нужно писать так:
CODE:
messagebox ("vstavka()")
?
57. Zireael - 01 Июня, 2018 - 04:50:02 - перейти к сообщению
Цитата:
Второй messagebox обязателен? И в нем нужно писать действия?
Его вообще можно убрать, он только для вывода сообщения. Действия он не выполняет.
Цитата:
кликнуть поле и вставить из буфера. Как это должно выглядеть?
code (Отобразить)
58. burn - 01 Июня, 2018 - 08:32:10 - перейти к сообщению
пациент ожил
59. burn - 05 Июня, 2018 - 10:58:49 - перейти к сообщению
Подскажите как сделать удаление значения переменной(в моем случае s) из текстового файла(или верхнюю строку).
Записал переменную в файл, а как наоборот?)))
Записал переменную в файл, а как наоборот?)))
CODE:
// логирование
fopen ("C:\log.txt", "a");
fwrite(s);fwrite(ENDL);
fclose();
//
fopen ("C:\log.txt", "a");
fwrite(s);fwrite(ENDL);
fclose();
//
60. Dantes3000 - 05 Июня, 2018 - 12:17:44 - перейти к сообщению
burn пишет:
как сделать удаление значения переменной
никак. Можно перезаписать весь файл без того, что нужно удалить