Registrieren einer SAP-Datei
Wenn ein Client eingehende Aufrufe akzeptiert, registriert seine ProtocolClOpenAfCompleteEx-Funktion in der Regel mindestens eine SAPs beim Anruf-Manager, indem NdisClRegisterSap aufgerufen wird.
Die folgende Abbildung zeigt einen Client eines Anrufmanagers, der einen SAP registriert.
Die folgende Abbildung zeigt einen Client eines MCM-Treibers, der einen SAP registriert.
Mit dem Aufruf von NdisClRegisterSap fordert ein Client Benachrichtigungen über eingehende Anrufe für einen bestimmten SAP an. NDIS leitet die vom Client bereitgestellten SAP-Informationen zur Validierung an die ProtocolCmRegisterSap-Funktion des Anrufleiters oder MCM-Treibers weiter. Wenn das angegebene SAP bereits verwendet wird oder der Anruf-Manager oder MCM-Treiber die vom Client bereitgestellte SAP-Spezifikation nicht erkennt, schlägt der Anruf-Manager oder MCM-Treiber diese Anforderung fehl.
In ProtocolCmRegisterSap kann der Anruf-Manager oder MCM-Treiber mit Netzwerksteuerungsgeräten oder anderen medienspezifischen Agents kommunizieren, um sap im Netzwerk für einen verbindungsorientierten Client zu registrieren. ProtocolCmRegisterSap speichert auch ein von NDIS bereitgestelltes NdisSapHandle , das die SAP darstellt.
ProtocolCmRegisterSap kann synchron oder asynchron abgeschlossen werden. Zum asynchronen Abschluss ruft die ProtocolCmRegisterSap-Funktion eines Aufruf-Managers NdisCmRegisterSapComplete auf. Die ProtocolCmRegisterSap-Funktion eines MCM-Treibers ruft NdisMCmRegisterSapComplete auf. Der Aufruf von Ndis(M)CmRegisterSapComplete bewirkt, dass NDIS die ProtocolClRegisterSapComplete-Funktion des Clients aufruft .
Wenn der Aufruf des Clients an NdisClRegisterSap erfolgreich ist, gibt NDIS an den Client eine NdisSapHandle zurück, die den SAP darstellt.
Nachdem ein Anrufmanager einen SAP im Namen eines verbindungsorientierten Clients registriert hat, benachrichtigt er diesen Client über ein an diese SAP weitergeleitetes Angebot für eingehende Anrufe, indem er NdisCmDispatchIncomingCall aufruft. Ein MCM-Treiber ruft NdisMCmDispatchIncomingCall auf (siehe Angeben eines eingehenden Anrufs). Ein Client kann eingehende Anrufe auf einem SAP empfangen, auch wenn die SAP-Registrierung noch aussteht. Das heißt, bevor die ProtocolClRegisterSapComplete-Funktion aufgerufen wird.