HINSTANCE
WTYPES.H头文件中定义如下:
typedef void __RPC_FAR *HINSTANCE;
HINSTANCE是“句柄型”数据类型, 从WTYPES.H中定义来看, 它其实就是一个void的指针类型void *. HINSTANCE在使用有其特殊的含义, 跟void *的应用不同, 它是作为程序运行实例(当前实例, 就类似于进程)的一个句柄.
在编写Win32应用程序时, 其入口函数:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
的第一个参数就是HINSTANCE实例. 从这里可以看出, 这个句柄类型的实例从程序启动时传入, 貌似系统会自动为你生成这样一个实例ID, 不需要由开发者在程序中自己创建.