Дата и время создания директории

Тема в разделе "WASM.BEGINNERS", создана пользователем Dlr, 29 ноя 2007.

  1. Dlr

    Dlr New Member

    Публикаций:
    0
    Регистрация:
    4 май 2007
    Сообщения:
    9
    Здравствуйте. Подскажите, пожалуйста, как установить дату и время создания директории для Win9x. Ведь SetFileTime в данном случае вроде бы не катит?
     
  2. roman_pro

    roman_pro New Member

    Публикаций:
    0
    Регистрация:
    9 фев 2007
    Сообщения:
    291
    Катит. Получаем HANDLE директории так:

    Код (Text):
    1. hDir = CreateFile (
    2.     DirName,
    3.     GENERIC_READ,
    4.     FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE,
    5.     NULL,
    6.     OPEN_EXISTING,
    7.     FILE_FLAG_BACKUP_SEMANTICS,
    8.     NULL
    9. );
    После чего юзаем SetFileTime
     
  3. Dlr

    Dlr New Member

    Публикаций:
    0
    Регистрация:
    4 май 2007
    Сообщения:
    9
    Спасибо, но о таком способе я знал, он не подходит. Дело в том, что мне это нужно осуществлять и под Win 95/98 в том числе, а там FILE_FLAG_BACKUP_SEMANTICS не поддерживается.
     
  4. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    Так директория - это файл с атрибутом DIRECTORY Поэтому все функции работать как обычно должны.
     
  5. Dlr

    Dlr New Member

    Публикаций:
    0
    Регистрация:
    4 май 2007
    Сообщения:
    9
    На практике это не так. Чтоб поменять дату или время создания директории нужно получить ее хэндл: 1) OpenFile (для директорий не работает), 2) CreateFile (сработает только с выше упомянутым флагом). Я пока так и не нашел решения этой задачи для Win9x.