在客戶端模組和提供者模組彼此連接之前,它們都必須向 NMR 註冊。 用戶端模組會呼叫 NmrRegisterClient 函式向 NMR 註冊,而提供者模組會呼叫 NmrRegisterProvider 函式向 NMR 註冊。 下圖說明網路模組註冊。
如果用戶端模組和提供者模組在向 NMR 註冊時都指定相同的 網路程式設計介面 (NPI), 則 NMR 將起始將兩個網路模組連接在一起。 NMR 會呼叫用戶端模組的 ClientAttachProvider 回呼函式來起始附加程式。 網路模組註冊器(NMR)進行連接的過程如下面的圖所示。
用戶端模組的 ClientAttachProvider 回呼函式可以檢查提供者模組的註冊資料,以判斷它是否會附加至提供者模組。 如果用戶端模組判斷它將附加至提供者模組,則會呼叫 NmrClientAttachProvider 函式來繼續附加程式。 當用戶端模組呼叫 NmrClientAttachProvider 函式時,NMR 會接著呼叫提供者模組的 ProviderAttachClient 回呼函式。 下圖說明繼續連接的用戶端模組。
提供者模組的 ProviderAttachClient 回呼函式可以檢查用戶端模組的註冊資料,以判斷它是否會附加至用戶端模組。 如果提供者模組判斷它將連結至用戶端模組,則提供者模組和用戶端模組會交換其各自 NPI 分派數據表結構的指標。 附加用戶端模組和提供者模組之後,它們可以透過獨立於 NMR 的 NPI 功能彼此互動。 下圖說明連接的網路模組。