addr.set (ACE_TEXT("HAStatus"), ACE_LOCALHOST);
這句中的HAStatus是什么含義?
網(wǎng)絡(luò)編程世界中,有一些服務(wù)是"眾所周知"(well-known)的。
如:
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users #Active users
systat 11/udp users #Active users
daytime 13/tcp
daytime 13/udp
這些服務(wù)的名稱和端口同樣是約定一致的。
它們定義在 c:\windows\system32\drivers\etc\services 文件中。
services是一個(gè)文本文件,你可以用notepad打開它。
需要把HAStatus指定一個(gè)端口號(hào)和協(xié)議,加在這個(gè)文件后面,如
HAStatus 2008/tcp # Home Automation
這樣,ACE_INET_Addr 可以讀取這個(gè)以名稱代表的服務(wù)的端口號(hào)。
查看一下ACE_INET_Addr 的實(shí)現(xiàn)源代碼,它會(huì)通過(guò)一個(gè)系統(tǒng)調(diào)用(或api)通過(guò)名稱獲取端口號(hào)的。