void usbdisk_changeRtc(void) { T_SYSTIME date; T_SYSTIME limitDate; T_U32 senson; // 退出 U盘读取文件 time.txt更新 RTC参数 if (Fwl_GetRTC_FromFile(s_RtcPath, &date)) { SetMinDate(limitDate); if (limitDate.year > date.year) { AK_DEBUG_OUTPUT("UDK: Error time.year:%d older limitDate:%d.\n", date.year, limitDate.year); return; } SetMaxDate(limitDate); if (limitDate.year < date.year) { AK_DEBUG_OUTPUT("UDK: Error time.year:%d over limitDate:%d.\n", date.year, limitDate.year); return; } senson = Utl_Convert_DateToSecond(&date); if (senson >= gb.TickMin && senson <= gb.TickMax) { Fwl_SetRTCtime(&date); if (Fwl_FileDelete(s_RtcPath)) { AK_DEBUG_OUTPUT("UDK: Delete file of time.txt success.\n"); } else { AK_DEBUG_OUTPUT("UDK: Delete file of time.txt false.\n"); } } else { AK_DEBUG_OUTPUT("UDK: Error time:%x over limit min:%x max:%x.\n", senson, gb.TickMin, gb.TickMax); } } }
/* Property page dialog callback */ INT_PTR CALLBACK DatePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { PGLOBALDATA pGlobalData; pGlobalData = (PGLOBALDATA)GetWindowLongPtr(hwndDlg, DWLP_USER); switch (uMsg) { case WM_INITDIALOG: pGlobalData = (PGLOBALDATA)((LPPROPSHEETPAGE)lParam)->lParam; SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pGlobalData); InitMinMaxDateSpin(hwndDlg, pGlobalData->lcid); UpdateDateLocaleSamples(hwndDlg, pGlobalData->lcid); InitShortDateCB(hwndDlg, pGlobalData->lcid); InitLongDateCB(hwndDlg, pGlobalData->lcid); InitShortDateSepSamples(hwndDlg, pGlobalData->lcid); /* TODO: Add other calendar types */ break; case WM_COMMAND: { switch (LOWORD(wParam)) { case IDC_SECONDYEAR_EDIT: { if(HIWORD(wParam)==EN_CHANGE) { SetMinData(hwndDlg); } } case IDC_SCR_MAX_YEAR: { /* Set "Apply" button enabled */ /* FIXME */ //PropSheet_Changed(GetParent(hwndDlg), hwndDlg); } break; case IDC_CALTYPE_COMBO: case IDC_HIJCHRON_COMBO: case IDC_SHRTDATEFMT_COMBO: case IDC_SHRTDATESEP_COMBO: case IDC_LONGDATEFMT_COMBO: { if (HIWORD(wParam) == CBN_SELCHANGE || HIWORD(wParam) == CBN_EDITCHANGE) { /* Set "Apply" button enabled */ PropSheet_Changed(GetParent(hwndDlg), hwndDlg); } } break; } } break; case WM_NOTIFY: { LPNMHDR lpnm = (LPNMHDR)lParam; /* If push apply button */ if (lpnm->code == (UINT)PSN_APPLY) { SetMaxDate(hwndDlg, pGlobalData->lcid); if(!SetShortDateSep(hwndDlg, pGlobalData->lcid)) break; if(!SetShortDateFormat(hwndDlg, pGlobalData->lcid)) break; if(!SetLongDateFormat(hwndDlg, pGlobalData->lcid)) break; InitShortDateCB(hwndDlg, pGlobalData->lcid); /* FIXME: */ //Sleep(15); UpdateDateLocaleSamples(hwndDlg, pGlobalData->lcid); } } break; } return FALSE; }