API 中的 gethostname 函式
gethostname函式會使用WSALookupServiceBegin函式來查詢SVCID_HOSTNAME作為服務類別 GUID。 如果傳遞至WSALookupServiceBegin函式之WSAQUERYSET結構的lpszServiceInstanceName成員為Null,或參考Null字串 (為 。「」) ,要解析本機主機。 否則,就會查閱指定的主機名稱。 為了模擬gethostname,Ws2_32.dll會指定lpszServiceInstanceName成員的Null指標,並指定 LUP_RETURN_NAME,以便在lpszServiceInstanceName成員中傳回主機名稱。 如果應用程式使用此查詢並指定LUP_RETURN_ADDR,則會在 CSADDR_INFO 結構中提供主機位址。 此查詢未定義LUP_RETURN_BLOB動作。 除非傳遞至WSALookupServiceBegin函式之WSAQUERYSET結構的lpszQueryString成員參考 FTP 之類的服務,否則埠資訊預設為零,在此情況下會提供指定服務的完整傳輸位址。
相關主題