[New - Windows NT]
OpenWaitableTimer函数返回一个现有命名的“等待”定时器对象的句柄。
手柄OpenWaitableTimer(
DWORD 【dwDesiredAccess】, | //访问标志 |
BOOL 【bInheritHandle】, | //继承标志 |
LPCTSTR 【lpTimerName】 | //指向计时器对象名称 |
); |
参数
【dwDesiredAccess】
指定对定时器对象的请求访问。对于支持对象安全性的系统,如果指定对象的安全描述符不允许调用进程的请求访问,则该函数将失败。
此参数可以是以下值的任意组合:
值 | 含义 |
TIMER_ALL_ACCESS | 指定定时器对象的所有可能的访问权限。 |
TIMER_MODIFY_STATE | 启用SetWaitableTimer和CancelWaitableTimer功能中的定时器句柄来修改定时器的状态。 |
SYNCHRONIZE | 允许在任何等待功能中使用定时器句柄等待定时器的状态信号。 |
【bInheritHandle】
指定返回的句柄是否可继承。如果为TRUE,则CreateProcess函数创建的进程可以继承该句柄;否则,句柄不能被继承。
【lpTimerName】
指向一个以null结束的字符串,指定计时器对象的名称。该名称仅限于MAX_PATH个字符,并且可以包含除反斜杠路径分隔符(\\)之外的任何字符。名称比较区分大小写。
回报值
如果函数成功,则返回值是定时器对象的句柄。
如果函数失败,返回值为NULL。要获取扩展错误信息,请调用GetLastError.
备注
OpenWaitableTimer功能允许多个进程打开相同计时器对象的句柄。只有某些进程已经使用CreateWaitableTimer功能创建了定时器,该函数才会成功。调用进程可以使用需要定时器对象的句柄(如等待功能)的任何函数中的返回句柄,但必须遵守【dwDesiredAccess】参数中指定的访问限制。
可以使用DuplicateHandle功能复制返回的句柄。使用CloseHandle功能关闭句柄。当过程终止时,系统自动关闭句柄。计时器对象在其最后一个句柄已关闭时被销毁。
也可以看看
CancelWaitableTimer,CloseHandle, CreateProcess,CreateWaitableTimer,DuplicateHandle, SetWaitableTimer