diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2010-08-10 23:51:58 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2010-08-10 23:51:58 +0300 |
commit | 1de40ac790d3218cc10d37f95f9f1a8c573dbe77 (patch) | |
tree | 7d67c67d58a9b5066597233b7abe04b4a46e08a1 /utilities.cpp | |
parent | 36a60a8021dc0fa84ce13677f69e5a3f1428fe5b (diff) |
modified: main.cpp
modified: options.cpp
modified: utilities.cpp
modified: utilities.h
Diffstat (limited to 'utilities.cpp')
-rw-r--r-- | utilities.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/utilities.cpp b/utilities.cpp index f2d717d..e0661a3 100644 --- a/utilities.cpp +++ b/utilities.cpp @@ -79,7 +79,7 @@ char *date() void GetFilePath(TCHAR *WindowTittle, char *szSetting, TCHAR *szExt, TCHAR *szExtDesc)
{
- TCHAR str[MAX_PATH+2] = {0};
+ TCHAR str[MAX_PATH+2] = {0}, *tmp;
OPENFILENAME ofn={0};
TCHAR filter[512], *pfilter;
ofn.lStructSize=CDSIZEOF_STRUCT(OPENFILENAME,lpTemplateName);
@@ -91,7 +91,9 @@ void GetFilePath(TCHAR *WindowTittle, char *szSetting, TCHAR *szExt, TCHAR *szEx pfilter[_tcslen(pfilter)+1] = '\0';
pfilter[_tcslen(pfilter)+2] = '\0';
ofn.lpstrFilter=filter;
- _tcscpy(str, UniGetContactSettingUtf(0, szModuleName, szSetting, _T("")));
+ tmp = UniGetContactSettingUtf(0, szModuleName, szSetting, _T(""));
+ _tcscpy(str, tmp);
+ mir_free(tmp);
if(_tcslen(str)< 2)
str[0] = '\0';
ofn.lpstrFile=str;
@@ -217,3 +219,19 @@ void storeOutput(HANDLE ahandle, string *output) output->append(readbuffer, 10);
} while (available>0);
}
+
+void cp866_to_cp1251(string *str)
+{
+ string::iterator p;
+ for(p = str->begin(); p != str->end(); p++)
+ {
+ if(*p > -129 && *p < -80)
+ *p += 64;
+ else if(*p > -33 && *p < -16)
+ *p += 16;
+ else if(*p == -16)
+ *p -= 72;
+ else if(*p == -17)
+ *p -= 57;
+ }
+}
|