summaryrefslogtreecommitdiff
path: root/main.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss123next@list.ru>2010-09-01 01:46:24 +0300
committerGluzskiy Alexandr <sss123next@list.ru>2010-09-01 01:46:24 +0300
commita739fa0c551a79c27f715fc081a6f398fbe9519a (patch)
tree16684fc506fa91db9d2dc297c244b7d65f838c84 /main.cpp
parent4f14d10536cd593a332fccdf6b954b8020f0b8d2 (diff)
modified: commonheaders.h
modified: main.cpp modified: new_gpg.vcproj
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/main.cpp b/main.cpp
index 0941c28..2eb1cd7 100644
--- a/main.cpp
+++ b/main.cpp
@@ -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;