BOOL TSetupSheet::EvCommand(WORD wNotifyCode, WORD wID, LPARAM hWndCtl) { if (wID == HELP_BUTTON) { WCHAR *section = L""; if (resId == MAIN_SHEET) { section = L"#setting_default"; } else if (resId == IO_SHEET) { section = L"#setting_io"; } else if (resId == PHYSDRV_SHEET) { section = L"#setting_physical"; } else if (resId == PARALLEL_SHEET) { section = L"#setting_parallel"; } else if (resId == COPYOPT_SHEET) { section = L"#setting_copyopt"; } else if (resId == DEL_SHEET) { section = L"#setting_del"; } else if (resId == LOG_SHEET) { section = L"#setting_log"; } else if (resId == MISC_SHEET) { section = L"#setting_misc"; } ShowHelpW(NULL, cfg->execDir, LoadStrW(IDS_FASTCOPYHELP), section); return TRUE; } return FALSE; }
/*========================================================================= File Log for TMainDlg =========================================================================*/ BOOL TMainDlg::StartFileLog() { WCHAR logDir[MAX_PATH] = L""; WCHAR wbuf[MAX_PATH] = L""; if (fileLogMode == NO_FILELOG || (!isListLog && IsListing())) return FALSE; if (fileLogMode == AUTO_FILELOG || wcschr(fileLogPath, '\\') == 0) { MakePathW(logDir, cfg.userDir, LoadStrW(IDS_FILELOG_SUBDIR)); if (::GetFileAttributesW(logDir) == 0xffffffff) ::CreateDirectoryW(logDir, NULL); if (fileLogMode == FIX_FILELOG && *fileLogPath) { wcscpy(wbuf, fileLogPath); MakePathW(fileLogPath, logDir, wbuf); } } if (fileLogMode == AUTO_FILELOG || *fileLogPath == 0) { SYSTEMTIME st = startTm; for (int i=0; i < 100; i++) { swprintf(wbuf, LoadStrW(IDS_FILELOGNAME), st.wYear, st.wMonth, st.wDay, st.wHour, st.wMinute, st.wSecond, i); MakePathW(fileLogPath, logDir, wbuf); hFileLog = ::CreateFileW(fileLogPath, GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, 0, CREATE_NEW, 0, 0); if (hFileLog != INVALID_HANDLE_VALUE) break; } } else { hFileLog = ::CreateFileW(fileLogPath, GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, 0, OPEN_ALWAYS, 0, 0); } if (hFileLog == INVALID_HANDLE_VALUE) return FALSE; WriteLogHeader(hFileLog, FALSE); return TRUE; }