HELLCTRL.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. #ifdef WIN32
  2. #ifdef UNICODE
  3.     #define FROM_OLE_STRING(str) str
  4.     #define TO_OLE_STRING(str) str 
  5. #else
  6.     #define FROM_OLE_STRING(str) ConvertToAnsi(str)
  7.     char* ConvertToAnsi(OLECHAR FAR* szW);  
  8.     #define TO_OLE_STRING(str) ConvertToUnicode(str)
  9.     OLECHAR* ConvertToUnicode(char FAR* szA);   
  10.     // Maximum length of string that can be converted between Ansi & Unicode
  11.     #define STRCONVERT_MAXLEN 500         
  12. #endif
  13. #else  // WIN16
  14.   #define APIENTRY far pascal  
  15.   #define TCHAR char
  16.   #define TEXT(sz) sz 
  17.   #define FROM_OLE_STRING(str) str  
  18.   #define TO_OLE_STRING(str) str 
  19.   #define LPTSTR LPSTR   
  20.   #define LPCTSTR LPCSTR
  21.   
  22.   // Windows NT defines the following in windowsx.h
  23.   #define GET_WM_COMMAND_ID(w,l) (w)
  24.   #define GET_WM_COMMAND_CMD(w,l) HIWORD(l)
  25.   #define GET_WM_COMMAND_HWND(w,l) LOWORD(l)
  26. #endif
  27. // Menu-item IDs
  28. #define IDM_CREATEHELLO  300
  29. #define IDM_SETVISIBLE   301  
  30. #define IDM_SETINVISIBLE   302
  31. #define IDM_GETHELLOMESSAGE   303
  32. #define IDM_SAYHELLO  304
  33. #define IDM_RELEASEHELLO 305    
  34. // MAX len of string table entries
  35. #define STR_LEN   100
  36. // String table constants
  37. #define IDS_PROGNAME                   1
  38. #define IDS_RESULT                     2
  39. #define IDS_ERROR                      3
  40. // Function prototypes
  41. int PASCAL WinMain (HINSTANCE, HINSTANCE, LPSTR, int);
  42. BOOL InitApplication (HINSTANCE);
  43. BOOL InitInstance (HINSTANCE, int);
  44. void DisplayError(IHello FAR* phello);
  45. #ifdef WIN16
  46. LRESULT __export CALLBACK MainWndProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
  47. #else
  48. LRESULT CALLBACK MainWndProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
  49. #endif