diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2009-09-30 21:35:51 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2009-09-30 21:35:51 +0300 |
commit | 4d4bd94c0e34e2eaedc9d12926f14ccde8e0b69c (patch) | |
tree | 2d7d1d0d5958ff64e6f563f6336408e5c2ad80ce /stopspam_mod/trunk/utilities.cpp | |
parent | c506453b8518a9bd7622756f24e24323ad97e375 (diff) |
variables support for stopspam (ported from stopspam from koshechka)
Diffstat (limited to 'stopspam_mod/trunk/utilities.cpp')
-rw-r--r-- | stopspam_mod/trunk/utilities.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/stopspam_mod/trunk/utilities.cpp b/stopspam_mod/trunk/utilities.cpp index 655ba24..bf00574 100644 --- a/stopspam_mod/trunk/utilities.cpp +++ b/stopspam_mod/trunk/utilities.cpp @@ -122,3 +122,24 @@ int RemoveTmp(WPARAM,LPARAM) RemoveTemporaryUsers();
return 0;
}
+tstring variables_parse(tstring const &tstrFormat, HANDLE hContact){
+ if (ServiceExists(MS_VARS_FORMATSTRING)) {
+ FORMATINFO fi;
+ TCHAR *tszParsed;
+ tstring tstrResult;
+
+ ZeroMemory(&fi, sizeof(fi));
+ fi.cbSize = sizeof(fi);
+ fi.tszFormat = _tcsdup(tstrFormat.c_str());
+ fi.hContact = hContact;
+ fi.flags |= FIF_TCHAR;
+ tszParsed = (TCHAR *)CallService(MS_VARS_FORMATSTRING, (WPARAM)&fi, 0);
+ free(fi.tszFormat);
+ if (tszParsed) {
+ tstrResult = tszParsed;
+ CallService(MS_VARS_FREEMEMORY, (WPARAM)tszParsed, 0);
+ return tstrResult;
+ }
+ }
+ return tstrFormat;
+}
\ No newline at end of file |