From 9022cd651aaf7e0cd44d2c987b329f9ae0a21529 Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Fri, 6 Aug 2010 23:03:26 +0300 Subject: it's all for today, i need to sleep --- utilities.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'utilities.cpp') diff --git a/utilities.cpp b/utilities.cpp index f8ea696..0654bd6 100644 --- a/utilities.cpp +++ b/utilities.cpp @@ -101,3 +101,25 @@ void GetFilePath(TCHAR *WindowTittle, char *szSetting, TCHAR *szExt, TCHAR *szEx return; DBWriteContactSettingTString(0, szModuleName, szSetting, str); } + +void GetFolderPath(TCHAR *WindowTittle, char *szSetting) +{ + BROWSEINFO pbi = {0}; + pbi.lpszTitle = WindowTittle; + pbi.ulFlags = BIF_EDITBOX|BIF_NEWDIALOGSTYLE|BIF_SHAREABLE; + LPITEMIDLIST pidl = SHBrowseForFolder(&pbi); + if (pidl != 0) + { + TCHAR path[MAX_PATH]; + if (SHGetPathFromIDList(pidl, path)) + { + DBWriteContactSettingTString(NULL, szModuleName, "szHomePath", path); + } + IMalloc * imalloc = 0; + if (SUCCEEDED(SHGetMalloc(&imalloc))) + { + imalloc->Free(pidl); + imalloc->Release(); + } + } +} -- cgit v1.2.3