LONG lineInitialize(<br><br> LPHLINEAPP lphLineApp, <br> HINSTANCE hInstance, <br> LINECALLBACK lpfnCallback, <br> LPCSTR lpszAppName, <br> LPDWORD lpdwNumDevs <br>  
; <br> <br><br>Parameters<br><br>lphLineApp<br><br>A pointer to a location that is filled with the application's usage handle for TAPI.<br><br>hInstance<br><br>The instance handle of the client application or DLL.<br><br>lpfnCallback<br><br>The address of a callback function that is invoked to determine status and events on the line device, addresses, or calls. For more information see lineCallbackFunc.<br><br>lpszAppName<br><br>A pointer to a NULL-terminated ASCII string that contains only displayable ASCII characters. If this parameter is not NULL, it contains an application-supplied name for the application. This name is provided in the LINECALLINFO structure to indicate, in a user-friendly way, which application originated, or originally accepted or answered the call. This information can be useful for call logging purposes. If lpszAppName is NULL, the application's filename is used instead.<br><br>lpdwNumDevs<br><br>A pointer to a DWORD-sized location. Upon successful completion of this request, this location is filled with the number of line devices available to the application.<br><br> <br><br>Return Values<br><br>Returns zero if the request is successful or a negative error number if an error has occurred. Possible return values are:<br>LINEERR_INVALAPPNAME, LINEERR_OPERATIONFAILED, LINEERR_INIFILECORRUPT, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_REINIT, LINEERR_NODRIVER, LINEERR_NODEVICE, LINEERR_NOMEM, LINEERR_NOMULTIPLEINSTANCE.