在pinovoke中 我搜索  CloseHandle   后
   后发现    有3个  分别是coredll   user32  kernel32
      为什么  会出现在3个呢   他们3者也什么不同 ?
      在他们下面的CloseHandle 的功能是不是相同的?
      使用他们有没有什么限制?
      一般情况下用哪一个好点?

   
   大家知道的能不能像我解释下

解决方案 »

  1.   

    [DllImport("kernel32.dll", EntryPoint="CloseHandle")]
    public static extern int CloseHandle (int hObject);没有在user32中
    pc下,保存在kernel32.dll中。
    wince/mobile下,在coredll.dll中。
      

  2.   

    Windows CE API 驻留在coredll.dll. 
    Win32 API 在 kernel32.dll 和 user32.dll 中驻留。
      

  3.   

    还有可能是这种情况
     
    [DllImport("kernel32.dll", EntryPoint="CloseHandle")]
    public static extern int CloseHandleInt (int hObject);[DllImport("kernel32.dll", EntryPoint="CloseHandle")]
    public static extern int CloseHandleIntPtr (IntPtr hObject);
      

  4.   

    我想应该都是差不多的
    关闭句柄
    因为三个dll负责不同的东西
    比如那导入一个 引用了一个句柄后 想关闭
    没有必要导入其他dll再close把
    嗯 嗯
    只要你知道句柄的意思 ......