RasSecurityDialogBegin

【勇芳软件工作室】汉化HomePreviousNext

[New - Windows NT]

RasSecurityDialogBegin功能是Windows NT RAS服务器在远程用户尝试连接时调用的第三方RAS安全性DLL入口点。这使安全性DLL能够开始对远程用户的身份验证。

DWORD WINAPI RasSecurityDialogBegin(

HPORT 【hPort】,// RAS句柄到端口
PBYTE 【pSendBuf】,//指向发送数据缓冲区的指针
DWORD 【SendBufSize】,//发送缓冲区的大小(以字节为单位)
PBYTE 【pRecvBuf】,//指向缓冲区的指针,用于接收数据
DWORD 【RecvBufSize】,//接收缓冲区的大小(以字节为单位)
VOID (WINAPI * 【RasSecurityDialogComplete】)//指向完成功能的指针
); 

参数

【hPort】

指定RAS端口句柄。安全性DLL在其他RAS安全功能(如RasSecurityDialogSendRasSecurityDialogReceive)中使用此句柄来标识此身份验证事务。

请注意,该句柄仅在RAS安全功能中有效;您不能在其他Win32 I / O功能中使用它。

【pSendBuf】

指向由RAS服务器分配的缓冲区的指针。安全性DLL使用此缓冲区与RasSecurityDialogSend功能发送显示在远程计算机上的RAS终端窗口中的文本。

【SendBufSize】

指定【pSendBuf】缓冲区的大小(以字节为单位)。

【pRecvBuf】

指向由RAS服务器分配的缓冲区的指针。安全性DLL使用此缓冲区与RasSecurityDialogReceive功能来接收来自远程用户的响应。

【RecvBufSize】

指定【pRecvBuf】缓冲区的大小(以字节为单位)。

【RasSecurityDialogComplete】

指定一个指向RasSecurityDialogComplete函数的指针。当安全性DLL已经完成远程用户的身份验证时,它调用此函数将结果报告给RAS服务器。

返回值

如果安全DLL成功启动认证操作,RasSecurityDialogBegin应返回NO_ERROR。在这种情况下,安全性DLL必须稍后通过调用【RasSecurityDialogComplete】参数指向的功能终止认证事务。

如果发生错误,RasSecurityDialogBegin应返回非零错误代码。在这种情况下,RAS服务器会挂起该调用,并将该错误记录在Windows NT事件日志中。返回非零错误代码会终止认证事务,因此安全性DLL不需要调用【RasSecurityDialogComplete】函数。

备注

当Windows NT RAS服务器从远程计算机接收到呼叫时,会调用注册的RAS安全性DLL导出的RasSecurityDialogBegin函数(如果有的话)。当RAS服务器调用此函数时,它会将以下信息传递给安全性DLL:

*用于识别连接的端口句柄

*指向与远程用户通信时使用的缓冲区的指针

*当验证完成时,指向RasSecurityDialogComplete函数的指针

端口句柄和缓冲区指针才有效,直到您调用RasSecurityDialogComplete终止认证事务。

您的RasSecurityDialogBegin实施必须尽快返回,因为RAS服务器被阻止,直到RasSecurityDialogBegin返回为止才能接受任何其他呼叫。RasSecurityDialogBegin函数应该复制输入参数,并创建一个线程来与远程用户进行通信和验证。

也可以看看

RasSecurityDialogComplete, RasSecurityDialogReceive, RasSecurityDialogSend