You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否存在返回INVALID_HANDLE_VALUE表示失败的Win32函数完整列表?

返回INVALID_HANDLE_VALUE表示失败的Win32 API函数列表

Win32 API中部分返回句柄的函数在调用失败时,会返回INVALID_HANDLE_VALUE(值为(HANDLE)-1)而非NULL,以下是常见的这类函数(排除返回伪句柄的情况):

  • CreateFileA/CreateFileW:文件创建或打开失败时返回该值
  • CreateFileMappingA/CreateFileMappingW:创建文件映射对象失败时返回
  • OpenFileMappingA/OpenFileMappingW:打开已存在的文件映射对象失败时返回
  • CreateMutexA/CreateMutexW:创建互斥量对象失败时返回
  • CreateSemaphoreA/CreateSemaphoreW:创建信号量对象失败时返回
  • CreateEventA/CreateEventW:创建事件对象失败时返回
  • CreatePipe:创建匿名管道失败时,输出的句柄会被设为INVALID_HANDLE_VALUE
  • FindFirstFileA/FindFirstFileW:首次查找文件或目录失败时返回
  • FindFirstFileExA/FindFirstFileExW:扩展文件查找操作失败时返回
  • CreateJobObjectA/CreateJobObjectW:创建作业对象失败时返回
  • OpenJobObjectA/OpenJobObjectW:打开指定作业对象失败时返回
  • CreateWaitableTimerA/CreateWaitableTimerW:创建可等待定时器失败时返回
  • OpenWaitableTimerA/OpenWaitableTimerW:打开已存在的可等待定时器失败时返回

需要注意的是,判断这些函数调用是否失败时,必须严格将返回值与INVALID_HANDLE_VALUE进行比较,不能用NULL作为失败判断依据,否则会导致错误的结果。若对某个函数的返回值规则存疑,优先查阅该函数的官方文档确认。

内容的提问来源于stack exchange,提问作者fghzxm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 00:44:55