VC高手帮忙看下是什么有关问题吧?高分!

VC高手帮忙看下是什么问题吧?高分!!!!!!!!!!!
在Windows编程中有:
int   WINAPI   WinMain(HINSTANCEhInstance,HINSTANCE       hPrevInstance,  
                                      LPSTR   szCmdLine,   int   iCmdShow)  

如果我写成:
int   PASCAL   WinMain(HANDLE   hInstance,HANDLE   hPrevInstance,LPSTR   lpszCmdParam,int   nCmdShow)

这里用WINAPI   和用   PASCAL   以及   用HINSTANCE和用HANDLE   有什么不同呢??
多谢啊



------解决方案--------------------
PASCAL 宏是指 __stdcall 调用约定,即参数从右向左压栈,被调者负责退栈,编译后的函数名称修饰为前面加下划线,后面加 @符号及参数的字节数
WINAPI 宏在WIN32中就是指 __stdcall


------解决方案--------------------
#ifdef _MAC
#define CALLBACK PASCAL
#define WINAPI CDECL
#define WINAPIV CDECL
#define APIENTRY WINAPI
#define APIPRIVATE CDECL
#ifdef _68K_
#define PASCAL __pascal
#else
#define PASCAL
#endif
#elif (_MSC_VER > = 800) || defined(_STDCALL_SUPPORTED)
#define CALLBACK __stdcall
#define WINAPI __stdcall
#define WINAPIV __cdecl
#define APIENTRY WINAPI
#define APIPRIVATE __stdcall
#define PASCAL __stdcall
#else
#define CALLBACK
#define WINAPI
#define WINAPIV
#define APIENTRY WINAPI
#define APIPRIVATE
#define PASCAL pascal
#endif


DECLARE_HANDLE(HINSTANCE);
#ifdef STRICT
typedef void *HANDLE;
#define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name
#else
typedef PVOID HANDLE;
#define DECLARE_HANDLE(name) typedef HANDLE name
#endif
typedef HANDLE *PHANDLE;

------解决方案--------------------
接着:
HANDLE是句柄类型的总称
HINSTANCE是实例句柄(HANDLE的一种),就像HWND是窗口句柄 HFONT是字体句柄
------解决方案--------------------
从实用角度来讲,这两者好像没什么大的区别,这两种写法都可以的吧。。。。。
------解决方案--------------------
HANDLE是句柄类型的总称
HINSTANCE是实例句柄(HANDLE的一种),
实际使用区别不大