郵槽學習筆記

Microsoft Windows NT、Windows 2000、Windows 95和Windows 98(含第二版)—但
不包括Windows CE—提供了一種簡單的單向“進程間通信”(interprocess communication,
I P C)機制。這個機制的名字非常古怪,叫作“郵槽”(M a i l s l o t)。通過
郵槽,客戶機進程可將消息傳送或廣播給一個或多個服務器進程。在同一臺計算機的不同進
程之間,或在跨越整個網絡的不同計算機的進程之間,協助進行消息的傳輸。用郵槽來開發
應用程序是一件非常簡單的事情,不要求對T C P / I P或I P X這樣的基層網絡傳送協議有着非常深
入的瞭解。由於郵槽是圍繞一個廣播通信體系設計出來的,所以當然不能指望能通過它實現
數據的“可靠”傳輸。
郵槽最大的一個缺點便是隻允許從客戶機到服務器,建立一種不可靠的單向數據通信。
而另一方面,郵槽最大的一個優點在於,它們使客戶機應用能夠非常容易地將廣播消息發送
給一個或多個服務器應用。
郵槽的名字
/ / s e r v e r / M a i l s l o t / [ p a t h ] n a m e
請將上述字串分爲三段來看: / / s e r v e r、/ M a i l s l o t和/ [ p a t h ] n a m e。第一部分/ / s e r v e r對應於服務器的名字,我們要在上面創建郵槽,並在在上面運行服務器程序。第二部分/ M a i l s l o t是固定字串,用於告訴系統這個文件名從屬於M S F S。而第三部分/ [ p a t h ] n a m e則允許應用程序獨一無二地定義及標識一個郵槽名。服務器字串部分可表示成一個小數點( .)表示本機、一個星號(*)表示遠程的任意機器、一個域名或者一個真正的服務器名字。
數據包的大小
消息長度必須爲4 2 4字節或以下
郵槽服務器的詳情
用CreateMailslot API函數創建一個郵槽句柄。
調用ReadFile API函數,並使用現成的郵槽句柄,從任何客戶機接收數據。
用C l o s e H a n d l e這個A P I函數,關閉郵槽句柄。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章