WSAHtonl 関数 (winsock2.h)

WSAHtonl 関数は、u_longをホストのバイト順からネットワークのバイト順に変換します。

構文

int WSAAPI WSAHtonl(
  [in]  SOCKET s,
  [in]  u_long hostlong,
  [out] u_long *lpnetlong
);

パラメーター

[in] s

ソケットを識別する記述子。

[in] hostlong

ホストのバイト順の 32 ビット番号。

[out] lpnetlong

ネットワーク のバイト順で番号を受け取る 32 ビット数値へのポインター。

戻り値

エラーが発生しない場合、 WSAHtonl は 0 を返します。 それ以外の場合は、SOCKET_ERRORの値が返され、 WSAGetLastError を呼び出すことによって特定のエラー コードを取得できます。

エラー コード 意味
WSANOTINITIALIZED
この関数を使用する前に 、WSAStartup 呼び出しが正常に行われる必要があります。
WSAENETDOWN
ネットワーク サブシステムが失敗しました。
WSAENOTSOCK
記述子はソケットではありません。
WSAEFAULT
lpnetlong パラメーターが NULL であるか、指すアドレスがユーザー・アドレス・スペースの有効な部分に完全に含まれていません。

解説

WSAHtonl 関数は、ホストのバイト順に 32 ビットの数値を受け取り、lpnetlong パラメーターが指す 32 ビット数値でネットワーク バイト順に 32 ビットの数値を返します。 s パラメーターで渡されたソケットは、ソケットに関連付けられている Winsock カタログ プロトコル エントリに基づいて、必要なネットワーク バイト順を決定するために使用されます。 この機能は、異なるネットワーク バイトオーダーを使用する Winsock プロバイダーをサポートします。

ソケットが AF_INET または AF_INET6 アドレス ファミリ用の場合、 WSAHtonl 関数を使用して、ホスト バイト順の IPv4 アドレスをネットワーク バイト順の IPv4 アドレスに変換できます。 この関数は、 hostlong パラメーターが有効な IPv4 アドレスであるかどうかを確認するチェックを行いません。

WSAHtonl 関数では、Winsock DLL が以前に WSAStartup 関数の呼び出しに成功して読み込まれている必要があります。 AF_INET または AF_INET6 ファミリで使用する場合、 htonl 関数では Winsock DLL を読み込む必要はありません。

Windows Phone 8: この関数は、Windows Phone 8 以降のWindows Phone ストア アプリでサポートされています。

Windows 8.1Windows Server 2012 R2: この関数は、Windows 8.1、Windows Server 2012 R2 以降の Windows ストア アプリでサポートされています。

要件

   
サポートされている最小のクライアント Windows 8.1、 Windows Vista [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー winsock2.h
Library Ws2_32.lib
[DLL] Ws2_32.dll

関連項目

InetNtop

WSAHtons

WSANtohl

WSANtohs

Winsock 関数

Winsock リファレンス

htonl

htons

inet_addr

inet_ntoa

ntohl

ntohs