Я использую команду ShellExecute для запуска exe-файла, который получает входной текстовый файл и возвращает выходной текстовый файл. Я написал это так:
ShellExecute(mainFormHandle, 'open', 'Test.exe',
'input.txt output.txt', nil, sw_shownormal);
//Read the output file...
S_List.LoadFromFile('output.txt');
Writeln(S_List[0])
Я предоставляю файл input.txt перед выполнением этой команды. При каждом запуске моей программы входной файл меняется, как и выходной файл.
Проблема заключается в следующем: я не вижу изменений в выходном файле! Строка, записанная в консоли, относится к предыдущему файлу, а не к новому измененному. Я имею в виду, что файл в проводнике изменился, но файл, который я прочитал, все еще остается старым.
Это кажется немного странным, но мне было интересно, есть ли способ обновить выходной файл перед его чтением? Или я что-то здесь упускаю?
Спасибо заранее.