srv_senddone (Extended Stored Procedure API)
This feature will be removed in a future version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible. Use CLR integration instead.
Sends a result completion message to the client.
int srv_senddone ( SRV_PROC * srvproc , DBUSMALLINT status , DBUSMALLINT info , DBINT count );
Is a pointer to the SRV_PROC structure that is the handle for a particular client connection (in this case, the handle that received the language request). The structure contains information that the Extended Stored Procedure API library uses to manage communication and data between the application and the client.
Is a 2-byte field for various status flags. Multiple flags can be set by using the AND and OR logical operators with status flag values. The following table lists possible status flags.
|SRV_DONE_COUNT||The count parameter contains a valid count.|
|SRV_DONE_ERROR||The current client command received an error.|
Is a reserved, 2-byte field. Set this value to 0.
Is a 4-byte field used to indicate a count for the current result set. If the SRV_DONE_COUNT flag is set in the status field, count holds a valid count.
SUCCEED or FAIL
A client request can cause the server to execute a number of commands and to return a number of result sets. For each result set, srv_senddone must return a result completion message to the client.
The count field indicates the number of rows affected by a command. If the count field contains a count, the SRV_DONE_COUNT flag should be set in the status field. This setting allows the client to distinguish between a count value of 0 and an unused count field.
Do not call srv_senddone from the SRV_CONNECT handler.
You should thoroughly review the source code of extended stored procedures, and you should test the compiled DLLs before you install them on a production server. For information about security review and testing, see this Microsoft Web site.