Смотрите здесь: https://jeffpar.github.io/kbarchive/kb/066/Q66052/
Когда вы первоначально открываете свой файл с помощью fopen, включите опцию режима "c" в качестве ПОСЛЕДНЕЙ ВАРИАНТЫ:
fopen( path, "wc") // w - write mode, c - allow immediate commit to disk
Затем, когда вы хотите принудительно выполнить сброс на диск, позвоните
_flushall()
Мы звонили до звонка
fclose()
Обратите внимание, что этот подход НЕ требует административных прав, которые FlushFileBuffers
требует .
С этого сайта:
"Microsoft C / C ++ версии 7.0 представляет опцию режима" c "для fopen ()
функция. Когда приложение открывает файл и указывает режим «с»,
библиотека времени выполнения записывает содержимое буфера файлов на диск, когда
Приложение вызывает функцию fflush () или _flushall (). «