Comment définir l'heure de modification d'un fichier programmatique dans Windows? p>
6 Réponses :
Utilisez SETFileInformationByhandle avec fichierInformationType comme fichier_basic_info p>
@bobbymcr, et essayant réellement de trouver les informations, puis de le code eux-mêmes pourrait être plus bénéfique que d'attendre que quelqu'un d'autre fasse tout le travail.
Votre variable MTIME n'est pas utilisée, mais sinon une bonne réponse.
Windows (ou le CRT standard, de toute façon) a le même utiles a > la famille de fonctions que UNIX a. à l'aide de fonctions Win32, FILE_BASIC_INFO peut être défini à l'aide de setFileInformationByhandle . p>
Pour autant que je sache, vous comprenez que Windows ne fonctionne pas pour les répertoires, car ils ne sont pas traités comme des fichiers sous Windows.
Voici la solution pour Darwin. Toute la sécurité supprimée.
#include <sys/stat.h>
#include <sys/time.h>
// params
char *path = "a path to a dir, a file or a symlink";
long int modDate = 1199149200;
bool followLink = false;
// body
struct stat currentTimes;
struct timeval newTimes[2];
stat(path, ¤tTimes);
newTimes[0].tv_sec = currentTimes.st_atimespec.tv_sec;
newTimes[0].tv_usec = (__darwin_suseconds_t)0;
newTimes[1].tv_sec = modDate;
newTimes[1].tv_usec = (__darwin_suseconds_t)0;
if (followLnk) {
utimes(path, (const struct timeval *)&newTimes);
} else {
lutimes(path, (const struct timeval *)&newTimes);
}