//обзор каталога
void CAppSettingsDlg::OnAppSettingsLogfolderButton()
{
 UpdateData();
 TCHAR szFolder[MAX_PATH*2] = { _T('\0') };
 LPCTSTR lpszInitial = m_log_files_folder.GetBuffer(MAX_PATH);
 BOOL bEditBox = TRUE;

 BOOL bRet = XBrowseForFolder(m_hWnd,
                              lpszInitial,
                              -1,
                              MLL::LoadString(IDS_SELECT_FOLDER_FOR_LOG_FILES),
                              szFolder,
                              sizeof(szFolder)/sizeof(TCHAR)-2,
                              bEditBox);

 if (bRet)
 {
  m_log_files_folder = szFolder;
  UpdateData(FALSE);
 }
}
Exemple #2
0
void COptionsDlg::BrowseDirClick(int nId)
{
	CString cstrCurFolder = "";
	GetDlgItem(nId)->GetWindowText(cstrCurFolder);
	cstrCurFolder.Replace("%s", "");
	cstrCurFolder.Replace("%d", "");
	cstrCurFolder.Replace("%m", "");
	auto_ptr<char> apCurFolder( new char[cstrCurFolder.GetLength() + 1] );
	char *szCurFolder = apCurFolder.get();
	szCurFolder[cstrCurFolder.GetLength()] = 0;

	TCHAR szFolder[MAX_PATH * 2];
	szFolder[0] = _T('\0');

	if (cstrCurFolder != "")
		strcpy(szCurFolder, cstrCurFolder.GetBuffer(0));

	BOOL bRet = XBrowseForFolder(m_hWnd, szCurFolder, szFolder, sizeof(szFolder)/sizeof(TCHAR)-2);

	if (bRet)
		GetDlgItem(nId)->SetWindowText(szFolder);
}