Export (0) Print
Expand All

RasDialFunc1 callback function

A RasDialFunc1 function is called by the RasDial function when a change of state occurs during a remote access connection process. A RasDialFunc1 function is comparable to a RasDialFunc function, but is enhanced by the addition of two parameters: a handle to the RAS connection, and an extended error code.

Syntax


void CALLBACK RasDialFunc1(
  _In_  HRASCONN hrasconn,
  _In_  UINT unMsg,
  _In_  RASCONNSTATE rascs,
  _In_  DWORD dwError,
  _In_  DWORD dwExtendedError
);

Parameters

hrasconn [in]

Handle to the RAS connection, as returned by RasDial.

unMsg [in]

Specifies the type of event that has occurred. Currently, the only event defined is WM_RASDIALEVENT.

rascs [in]

Specifies the RASCONNSTATE enumerator value that indicates the state the RasDial remote access connection process is about to enter.

dwError [in]

Specifies the error that has occurred. If no error has occurred, dwError is zero.

RasDial calls RasDialFunc1 with dwError set to zero upon entry to each connection state. If an error occurs within a state, RasDial calls RasDialFunc1 again with a nonzero dwError value.

In some error cases, the dwExtendedError parameter contains extended error information.

dwExtendedError [in]

Specifies extended error information for certain nonzero values of dwError. For all other values of dwError, dwExtendedError is zero.

The contents of dwExtendedError are defined for values of dwError as follows.

dwErrorMeaning
ERROR_SERVER_NOT_RESPONDING

Specifies the NetBIOS error that occurred.

ERROR_NETBIOS_ERROR

Specifies the NetBIOS error that occurred.

ERROR_AUTH_INTERNAL

Specifies an internal diagnostics code.

ERROR_CANNOT_GET_LANA

Specifies a routing error code, which is a RAS error.

 

Return value

This callback function does not return a value.

Remarks

A RasDial connection operation is suspended during a call to a RasDialFunc1 callback function. For that reason, the RasDialFunc1 implementation generally returns as quickly as possible. There are two exceptions to that rule. Asynchronous (slow) devices such as modems often have time-out periods measured in seconds rather than milliseconds; a slow return from a RasDialFunc1 function is generally not a problem. The prompt return requirement also does not apply when dwError is nonzero, indicating that an error has occurred. It is safe, for example, to put up an error dialog box and wait for user input.

The RasDialFunc1 implementation should not depend on the order or occurrence of particular RASCONNSTATE connection states, because this may vary between platforms.

Do not call the RasDial function from within a RasDialFunc1 callback function. Call the RasGetConnectStatus, RasEnumEntries, RasEnumConnections, RasGetErrorString, and RasHangUp functions from within the callback function. For example, calling RasGetConnectStatus from within a callback function would be useful for determining the name and type of the connecting device.

Note that, for convenience, RasHangUp can be called from within a RasDialFunc1 callback function. However, much of the hang-up processing occurs after the RasDialFunc1 callback function has returned.

RasDialFunc1 is a placeholder for the application-defined or library-defined function name.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

Header

Ras.h

See also

Remote Access Service (RAS) Overview
Remote Access Service Functions
RasDial
RasDialFunc
RasDialFunc2
RASCONNSTATE
RasEnumConnections
RasEnumEntries
RasGetConnectStatus
RasGetErrorString
RasHangUp

 

 

Community Additions

ADD
Show:
© 2014 Microsoft