Как вставить дату создания файла в Listview?

Тема в разделе "WASM.BEGINNERS", создана пользователем Dimon, 3 авг 2006.

  1. Dimon

    Dimon New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2006
    Сообщения:
    9
    ...если есть заполненная временем создания файла структура SYSTEMTIME, и нужно вставить это самое время создания в колонку Listview control'a в формате
    *dd.mm.yyyy hh:mm*?
     
  2. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    Код (Text):
    1. SYSTEMTIME st;
    2. char szDate[64]="";
    3. LV_ITEM lvi;
    4.  
    5. wsprintf(szDate, "%02d.%02d.%04d %02d:%02d",
    6.     st.wDay, st.wMonth, st.wYear,
    7.     st.wHour, st.wMinute);
    8.  
    9. lvi.iSubItem = iSubItem;
    10. lvi.pszText = szDate;
    11. SendMessage(hwndList, LVM_SETITEMTEXT, ItemIndex, (LPARAM)&lvi);
     
  3. Dimon

    Dimon New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2006
    Сообщения:
    9
    rmn, почему-то в колонке отображаются числа в формате
    *dd.mmmmmm.yyyy hhhh:ssssss*, например
    *21.458752.0000 2006.983040*, короче говоря полная дурь, сам не знаю почему...
     
  4. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Dimon
    Если на асме, то нужно иметь в виду, что поля структуры SYSTEMTIME - 16-битные, и напрямую в стек их запихивать нельзя при вызове wsprintf.
    Код (Text):
    1. movzx eax,WORD PTR [st.wDay]
    2. push eax