diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2010-09-01 01:46:24 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2010-09-01 01:46:24 +0300 |
commit | a739fa0c551a79c27f715fc081a6f398fbe9519a (patch) | |
tree | 16684fc506fa91db9d2dc297c244b7d65f838c84 /main.cpp | |
parent | 4f14d10536cd593a332fccdf6b954b8020f0b8d2 (diff) |
modified: commonheaders.h
modified: main.cpp
modified: new_gpg.vcproj
Diffstat (limited to 'main.cpp')
-rw-r--r-- | main.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
@@ -401,10 +401,18 @@ static BOOL CALLBACK DlgProcGpgBinOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LP case WM_INITDIALOG: { TranslateDialogDefault(hwndDlg); - tmp = UniGetContactSettingUtf(NULL, szGPGModuleName, "szGpgBinPath", _T("")); + TCHAR *path = new TCHAR [MAX_PATH]; + DWORD len = MAX_PATH; + tmp = UniGetContactSettingUtf(NULL, szGPGModuleName, "szGpgBinPath", (SHGetValue(HKEY_CURRENT_USER, _T("Software\\GNU\\GnuPG\\gpgProgram"), 0, 0, path, &len) == ERROR_SUCCESS)?path:_T("")); + delete [] path; SetDlgItemText(hwndDlg, IDC_BIN_PATH, tmp); mir_free(tmp); - tmp = UniGetContactSettingUtf(NULL, szGPGModuleName, "szHomePath", _T("")); + path = new TCHAR [MAX_PATH]; + ExpandEnvironmentStrings(_T("%APPDATA%"), path, MAX_PATH); + wstring path_ = path; + delete [] path; + path_ += _T("\\GnuPG"); + tmp = UniGetContactSettingUtf(NULL, szGPGModuleName, "szHomePath", (TCHAR*)path_.c_str()); SetDlgItemText(hwndDlg, IDC_HOME_DIR, tmp); mir_free(tmp); return TRUE; |