Se non hai risolto, un esempio semplice (anche per essere indipendente da lingue e versioni di sistema operativo, ma fai attenzione all'ora locale) potrebbe essere questo
TCHAR *dw[] = {L"Domenica", L"Lunedì", L"Martedì", L"Mercoledì", L"Giovedì", L"Venerdì", L"Sabato"};
TCHAR *mn[] = {L"gennaio", L"febbraio", L"marzo", L"aprile", L"maggio", L"giugno",
L"luglio", L"agosto", L"settembre", L"ottobre", L"novembre", L"dicembre"};
SYSTEMTIME st;
GetLocalTime(&st);
CString cstrMessage;
cstrMessage.Format(_T("%s %02d %s %d, %02d:%02d:%02d"),
dw[st.wDayOfWeek],
st.wDay,
mn[st.wMonth-1],
st.wYear,
st.wHour,
st.wMinute,
st.wSecond);