Re[4]: fopen, rename и дата создания файла
От: Maniacal Россия  
Дата: 20.02.24 11:26
Оценка:
Здравствуйте, Carc, Вы писали:

C>А что сама C-шная rename вызывает?

C>В Винде есть несколько вариантов переименования\перемещения.
C>См. на MoveFileEx + флаг MOVEFILE_COPY_ALLOWED

В disassembly дебаггер что-то не очень стремится нутро CRT показывать даже после включения загрузки символов, но тут проблема не в rename явно, а в fopen. Если создавать файл, который недавно был в файловой системе, то дата создания берётся от удалённого файла. Если хотя бы одну букву поменять в имени, то всё нормально. С костылями я смогу это обойти или через WinAPI тоже, напрямую задавая дату создания. Но коллеги не оценят, если догадаются заглянуть в код. Всё лицо разобьют себе фейспалмом. Не в тех годах я уже такими костылями заплатки в коде делать. Хотелось по-человечески. И главное разобраться за что. Косвенно где-то всплывают наводки, что это последствия зашитого в API функционала по сохранению даты создания файла при его копировании в другое место. Но тут и место то же, и файл не копируется, а создаётся новый.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.