4.19 WFSAsyncOpen

HRESULT WFSAsyncOpen( lpszLogicalName, hApp, lpszAppID, dwTraceLevel, dwTimeOut, lphService, hWnd, dwSrvcVersionsRequired, lpSrvcVersion, lpSPIVersion, lpRequestID )

Initiates a session (a series of service requests terminated with the WFSClose or WFSAsyncClose function) between the application and the specified service. The asynchronous version of WFSOpen.

Parameters LPSTR lpszLogicalName

See WFSOpen.

HAPP hApp

The application handle to be associated with the session being opened.
See WFSOpen, WFSCreateAppHandle and Sections 3.5 and 3.8.2 for details.

LPSTR lpszAppID

Points to a null-terminated string containing the application ID. See WFSOpen.

DWORD dwTraceLevel

See WFMSetTraceLevel. NULL turns off all tracing.

DWORD dwTimeOut

Number of milliseconds to wait for completion (WFS_INDEFINITE_WAIT to specify a request that will wait until completion).

LPHSERVICE lphService

Pointer to the service handle (returned parameter).

HWND hWnd

The window handle which is to receive the completion message for this request.

DWORD dwSrvcVersionsRequired

See WFSOpen.

LPWFSVERSION lpSrvcVersion

See WFSOpen (returned parameter).

LPWFSVERSION lpSPIVersion

See WFSOpen (returned parameter).

LPREQUESTID lpRequestID

Pointer to the request identifier for this request (returned parameter).

Mode Asynchronous

Comments See WFSOpen.

The application must call WFSFreeResult to deallocate the WFSRESULT data structure which is pointed to by the completion message. Note that a WFSRESULT structure may be returned even if the function completes with an error; see Section 3.13.

Messages WFS_OPEN_COMPLETE

Error Codes If the function return is not WFS_SUCCESS, it is one of the following error conditions, indicating that the asynchronous operation was not initiated:

WFS_ERR_CONNECTION_LOST
The connection to the service is lost.
WFS_ERR_INTERNAL_ERROR
An internal inconsistency or other unexpected error occurred in the WOSA/XFS subsystem.
WFS_ERR_INVALID_APP_HANDLE
The specified application handle is not valid, i.e., was not created by a preceding create call.
WFS_ERR_INVALID_HWND
The hWnd parameter is not a valid window handle.
WFS_ERR_INVALID_POINTER
A pointer parameter does not point to accessible memory.
WFS_ERR_INVALID_SERVPROV
The file containing the service provider is invalid or corrupted.
WFS_ERR_INVALID_TRACELEVEL
The dwTraceLevel parameter does not correspond to a valid trace level or set of levels.
WFS_ERR_NO_SERVPROV
The file containing the service provider does not exist.
WFS_ERR_NOT_STARTED
The application has not previously performed a successful WFSStartUp.
WFS_ERR_OP_IN_PROGRESS
A blocking operation is in progress on the thread; only WFSCancelBlockingCall and WFSIsBlocking are permitted at this time.
WFS_ERR_SERVICE_NOT_FOUND
The logical name is not a valid service provider name.
WFS_ERR_SPI_VER_TOO_HIGH
The range of versions of WOSA/XFS SPI support requested by the XFS Manager is higher than any supported by the service provider for the logical service being opened.
WFS_ERR_SPI_VER_TOO_LOW
The range of versions of WOSA/XFS SPI support requested by the a XFS Manager is lower than any supported by the service provider for the logical service being opened.
WFS_ERR_SRVC_VER_TOO_HIGH
The range of versions of the service-specific interface support requested by the application (in the dwSrvcVersionsRequired parameter of this call) is higher than any supported by the service provider for the logical service being opened.
WFS_ERR_SRVC_VER_TOO_LOW
The range of versions of the service-specific interface support requested by the application (in the dwSrvcVersionsRequired parameter of this call) is lower than any supported by the service provider for the logical service being opened.
WFS_ERR_VERSION_ERROR_IN_SRVC
Within the service, a version mismatch of two modules occurred.

The following error conditions are returned via the asynchronous command completion message, as the hResult from the WFSRESULT structure. Any service-specific errors that can be returned are defined in the specifications for each service class.

WFS_ERR_CANCELED
The request was canceled by WFSCancelAsyncRequest.
WFS_ERR_DEV_NOT_READY
The function required device access, and the device was not ready timed out.
WFS_ERR_INTERNAL_ERROR
An internal inconsistency or other unexpected error occurred in the WOSA/XFS subsystem.
WFS_ERR_HARDWARE_ERROR
The function required device access, and an error occured on the device.
WFS_ERR_SOFTWARE_ERROR
The function required access to configuration information, and an error occured on the software.
WFS_ERR_TIMEOUT
The timeout interval expired.
WFS_ERR_VERSION_ERROR_IN_SRVC
Within the service, a version mismatch of two modules occurred.

See also WFSOpen, WFSClose, WFSCreateAppHandle, WFSCancelAsyncRequest, WFMSetTraceLevel