home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
msdn_vcb
/
samples
/
vc98
/
sdk
/
com
/
oleaut
/
hello
/
hellctrl
/
hellctrl.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-06-23
|
2KB
|
57 lines
#ifdef WIN32
#ifdef UNICODE
#define FROM_OLE_STRING(str) str
#define TO_OLE_STRING(str) str
#else
#define FROM_OLE_STRING(str) ConvertToAnsi(str)
char* ConvertToAnsi(OLECHAR FAR* szW);
#define TO_OLE_STRING(str) ConvertToUnicode(str)
OLECHAR* ConvertToUnicode(char FAR* szA);
// Maximum length of string that can be converted between Ansi & Unicode
#define STRCONVERT_MAXLEN 500
#endif
#else // WIN16
#define APIENTRY far pascal
#define TCHAR char
#define TEXT(sz) sz
#define FROM_OLE_STRING(str) str
#define TO_OLE_STRING(str) str
#define LPTSTR LPSTR
#define LPCTSTR LPCSTR
// Windows NT defines the following in windowsx.h
#define GET_WM_COMMAND_ID(w,l) (w)
#define GET_WM_COMMAND_CMD(w,l) HIWORD(l)
#define GET_WM_COMMAND_HWND(w,l) LOWORD(l)
#endif
// Menu-item IDs
#define IDM_CREATEHELLO 300
#define IDM_SETVISIBLE 301
#define IDM_SETINVISIBLE 302
#define IDM_GETHELLOMESSAGE 303
#define IDM_SAYHELLO 304
#define IDM_RELEASEHELLO 305
// MAX len of string table entries
#define STR_LEN 100
// String table constants
#define IDS_PROGNAME 1
#define IDS_RESULT 2
#define IDS_ERROR 3
// Function prototypes
int PASCAL WinMain (HINSTANCE, HINSTANCE, LPSTR, int);
BOOL InitApplication (HINSTANCE);
BOOL InitInstance (HINSTANCE, int);
void DisplayError(IHello FAR* phello);
#ifdef WIN16
LRESULT __export CALLBACK MainWndProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
#else
LRESULT CALLBACK MainWndProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
#endif