EvtOpenSession 函数 (winevt.h)
建立与远程计算机的连接,可在调用其他 Windows 事件日志函数时使用该连接。
语法
EVT_HANDLE EvtOpenSession(
[in] EVT_LOGIN_CLASS LoginClass,
[in] PVOID Login,
[in] DWORD Timeout,
[in] DWORD Flags
);
参数
[in] LoginClass
用于连接到远程计算机的连接方法。 有关可能的值,请参阅 EVT_LOGIN_CLASS 枚举。
[in] Login
一个EVT_RPC_LOGIN结构,用于标识要连接到的远程计算机、用户的凭据,以及连接时要使用的身份验证类型。
[in] Timeout
保留。 必须为零。
[in] Flags
保留。 必须为零。
返回值
如果成功,函数将返回可用于访问远程计算机上的事件日志信息的会话句柄;否则为 NULL。 如果 为 NULL,则调用 GetLastError 函数以获取错误代码。
注解
完成会话句柄后,调用 EvtClose 函数。 关闭会话句柄还会关闭会话中创建的所有打开句柄, (关闭打开的句柄会取消这些句柄) 的任何当前活动。
若要连接到远程计算机,远程计算机必须启用“远程事件日志管理”Windows 防火墙例外;否则,尝试使用会话句柄时,调用将出错,RPC_S_SERVER_UNAVAILABLE。 要连接到的计算机必须运行 Windows Vista 或更高版本。
此函数不验证凭据;首次尝试使用会话句柄时,会验证凭据。 如果凭据无效,则调用将失败并出现ERROR_ACCESS_DENIED。
示例
有关演示如何使用此函数的示例,请参阅 访问远程计算机。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | winevt.h |
Library | Wevtapi.lib |
DLL | Wevtapi.dll |