dllreg_util.h
上传用户:sencon168
上传日期:2007-01-04
资源大小:22k
文件大小:1k
源码类别:

Shell编程

开发平台:

Visual C++

  1. #ifndef __NTServiceManager_Utils_Defined__
  2. #define __NTServiceManager_Utils_Defined__
  3. #include <malloc.h>
  4. #define DLLREGUNREGNAME TEXT("DLL Registerer")
  5. #define _UNUSED_PARAMETER(p)
  6. {
  7. (p) = (p);
  8. }
  9. extern CRITICAL_SECTION g_critSectionBreak;
  10. template <class T> T GET_SAFE( T a ) {EnterCriticalSection(&g_critSectionBreak); T z = a; LeaveCriticalSection(&g_critSectionBreak); return z;}
  11. template <class T> void SET_SAFE( T & a , T b) {EnterCriticalSection(&g_critSectionBreak); a = b; LeaveCriticalSection(&g_critSectionBreak);}
  12. #define ARRAYSIZE(a)    (sizeof(a)/sizeof(a[0]))
  13. extern int  LocalToWideChar(LPWSTR pWide, LPTSTR pLocal, DWORD dwChars);
  14. extern int  WideCharToLocal(LPTSTR pLocal, LPWSTR pWide, DWORD dwChars);
  15. #define _MBSTR(wstr) hf_wctomb((LPSTR)alloca(wcslen(wstr) + 1), (wstr),wcslen(wstr) + 1)
  16. #define _WCSTR(str) hf_mbtowc((LPWSTR)alloca((strlen(str) + 1) * sizeof(WCHAR)),(str),strlen(str) + 1)
  17. LPWSTR hf_mbtowc(LPWSTR lpw, LPCSTR lpa, int nChars);
  18. LPSTR hf_wctomb(LPSTR lpa, LPCWSTR lpw, int nChars);
  19. #endif