请问明白人:句柄是个什么 概念?主要用在哪里?是怎么用的?举隔例子好麽?
谢谢你! 我对这个问题没什么认识,所以希望可以说的详细些,Thanks~~

解决方案 »

  1.   

    指针对应着一个数据在内存中的地址,句柄本质上仍是一个指针,一个指向指针的指针,可以指向一个类或者很复杂的结构。例如:HANDLE hComm;
    hComm = CreateFile(sComNo, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
    if(hComm == INVALID_HANDLE_VALUE)
    {
      ::MessageBox(0, "Create Handle failed.", "Error", MB_OK);
      return;
    }
      

  2.   

    建议你去参考一下这里:
    http://zhaoxu.com/bbs/get.asp?get=8088
    里面找VC版块,有很多你需要的
      

  3.   

    弱弱的反驳一下:sgnaw(李逍遥) 我是很反对把handle 理解成指针的,因为handle 他实际上是windows 对某种对象的一个标识,而不是指向一个指针、结构.  列如createfile 返回的多半是在100h 以下的直,那么如果访问100h 的地址,当然要抛出异常了。而windows 多半在系统地址空间,建立了一个对hFile ==80h的文件对象句柄的具体描述,
    所以handle 应该算是标识,而非指针!