Дата создания скомпилированного исполняемого файла (VC ++ 2005)

Дата создания исполняемого файла, на который ссылается VS2005, не соответствует реальной дате создания .exeфайла. Только полная перестройка установит текущую дату, повторная ссылка не сделает этого. Очевидно, что для файла установлена ​​некоторая дата, которая берется из одного из файлов проекта.

Итак: есть ли способ заставить компоновщик установить дату создания реальной даты ссылки?

20.08.2008 15:40:53
4 ОТВЕТА

Удалите исполняемый файл как часть события предварительной ссылки.

Редактировать: Ха, я забыл о проводнике, сбрасывающем дату создания, если вы называете файл точно таким же, как файл, который был недавно удален.

В любом случае, почему вы отключаете дату создания?

1
3.07.2012 14:54:05

Полная перестройка удалит этот файл, заставляя компоновщика создать его, поэтому причина, по которой он получает новую дату создания. Вы можете попробовать отключить инкрементные ссылки в свойствах проекта (Linker | General). Если этого не произойдет, вы можете добавить событие сборки, чтобы удалить исполняемый файл и заставить его каждый раз создавать новый файл. Обе эти вещи могут увеличить ваше время сборки.

0
20.08.2008 16:02:52

Удаление исполняемого файла не делает работу. Это проблема. Также я не смог идентифицировать ни один файл проекта, дата-время которого была такой же, как у более позднего связанного исполняемого файла. Это позволяет мне заключить, что «дата создания» - это информация, взятая из некоторого файла проекта.

Проект имеет 400000 строк, поэтому полная сборка невозможна.

0
20.08.2008 17:12:57

Как насчет использования чего-нибудь вроде DirDate (или написать немного утилиты самостоятельно), чтобы установить дату создания и вызвать ее с шага после сборки?

0
2.10.2008 23:21:59