У меня есть программа (jhead), которая компилируется с очень небольшим количеством настроек как для Windows, так и для общих вариантов Unix. Время от времени пользователи Windows спрашивают, можно ли изменить его, чтобы также установить «дату/время создания» файлов, но я не вижу способа сделать это с помощью API POSIX. Что я сейчас делаю:
{
struct utimbuf mtime;
mtime.actime = NewUnixTime;
mtime.modtime = NewUnixTime;
utime(FileName, &mtime);
}
В идеале структура utimebuf должна иметь только время создания, но его нет. Мне кажется, что для изменения времени создания под Windows потребуется много специфичного для Windows непереносимого кода. Есть ли другой способ POSIX сделать это? Какие-либо предложения?