Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

query on TSPI_lineNegotiateTSPIVersion() at provider init

110 views
Skip to first unread message

Mohit

unread,
Dec 16, 2009, 11:36:01 PM12/16/09
to
Hi friends,

I have a query about the provider intialization process performed by the TAPI.

As per my knowledge, when TAPI application calls lineInitialize() to
initilaize the Service Providers installed in the PC then TAPISRV first
negotiates the overall TSPI version supported by Service Provider by caling
TSPI_lineNegotiateTSPIVersion() with dwDeviceID = INITIALIZE_NEGOTIATION.
Now, in this function no Permenent Provider ID is mentiond for any service
provider then how can any Service Provider comes to know that the function is
called for that service provider and not for any other Service Provider
installed in the PC?

Is this function call cause the TSPI version negotiation with all Service
Providers installed in the system or there is any process from which the
Service Provider comes to know that the function call is for it only.

Thanks,
Mohit

Andreas Marschall [exMVP TAPI]

unread,
Dec 17, 2009, 6:43:41 AM12/17/09
to
"Mohit" <Mo...@discussions.microsoft.com> schrieb im Newsbeitrag
news:30A38298-1E20-470F...@microsoft.com...

> As per my knowledge, when TAPI application calls lineInitialize() to
> initilaize the Service Providers installed in the PC then TAPISRV first
> negotiates the overall TSPI version supported by Service Provider by
> caling
> TSPI_lineNegotiateTSPIVersion() with dwDeviceID = INITIALIZE_NEGOTIATION.
> Now, in this function no Permenent Provider ID is mentiond for any service
> provider then how can any Service Provider comes to know that the function
> is
> called for that service provider and not for any other Service Provider
> installed in the PC?

Mohit,
each TSP is a DLL that is loaded dynamically by TAPISRV.
Ech DLL/TSP exports the function TSPI_lineNegotiateTSPIVersion() which has
specific function entry point in this TSP/DLL.
Thi is the same for all other TSPI_ functions.
So a TSP/DLL does only get calls to its own function entry points,
hence it can be sure that this is a call to to its own function.

> Is this function call cause the TSPI version negotiation with all Service
> Providers installed in the system or there is any process from which the
> Service Provider comes to know that the function call is for it only.

Each TSP loaded by TAPISRV is called seperately.
TSP don't get any notice of other TSPs running in parallel.

--
Best Regards
Andreas Marschall
Microsoft MVP for TAPI / Windows SDK / Visual C++ 2003-2008
TAPI / TSP Developer and Tester
My TAPI and TSPI FAQ:
http://www.I-B-A-M.de/Andreas_Marschall's_TAPI_and_TSPI_FAQ.htm
My Toto� Tools (a collection of free, mostly TAPI related tools):
http://www.i-b-a-m.de/Andreas_Marschall's_Toto_Tools.htm
TAPI development around the world (Frappr! map):
http://www.frappr.com/TAPIaroundTheWorld
* Please post all messages and replies to the newsgroup so all may
* benefit from the discussion. Private mail is usually not replied to.
* This posting is provided "AS IS" with no warranties, and confers no
rights.

Mohit

unread,
Dec 17, 2009, 7:57:02 AM12/17/09
to
Thanks for your reply Andreas

> .
>

Andreas Marschall [exMVP TAPI]

unread,
Dec 17, 2009, 10:15:47 AM12/17/09
to
"Mohit" <Mo...@discussions.microsoft.com> schrieb im Newsbeitrag
news:D44D8F65-0C95-41B4...@microsoft.com...

> Thanks for your reply Andreas

Mohit, you are welcome.

0 new messages