WSAStringToAddressA 関数 (winsock2.h)
WSAStringToAddress 関数は、標準テキスト 表示形式のネットワーク アドレスを、このような構造体を受け取る Windows ソケット ルーチンに渡すのに適した、sockaddr 構造体の数値バイナリ形式に変換します。
構文
INT WSAAPI WSAStringToAddressA(
[in] LPSTR AddressString,
[in] INT AddressFamily,
[in, optional] LPWSAPROTOCOL_INFOA lpProtocolInfo,
[out] LPSOCKADDR lpAddress,
[in, out] LPINT lpAddressLength
);
パラメーター
[in] AddressString
変換する標準テキスト形式のネットワーク アドレスを含む、0 で終わる文字列へのポインター。
[in] AddressFamily
AddressString パラメーターによって指されるネットワーク アドレスのアドレス ファミリ。
[in, optional] lpProtocolInfo
使用するプロバイダーに関連付けられている WSAPROTOCOL_INFO 構造体。 これが NULL
[out] lpAddress
関数が成功した場合にアドレス文字列の sockaddr 構造体で埋められたバッファーへのポインター。
[in, out] lpAddressLength
lpAddress パラメーターが指すバッファーの長さ (バイト単位) へのポインター。 関数呼び出しが成功した場合、このパラメーターは、lpAddress パラメーターで返される sockaddr 構造体のサイズへのポインターを返します。 指定したバッファーのサイズが十分でない場合、WSAEFAULT
戻り値
操作が成功した場合 WSAStringToAddress の戻り値は 0 です。 それ以外の場合は、SOCKET_ERROR値が返され、WSAGetLastError
エラー コード | 意味 |
---|---|
|
lpAddress パラメーターが指すバッファーが小さすぎます。 より大きなバッファーを渡します。 |
|
関数は文字列を sockaddrに変換できませんでした。 詳細については、次の「解説」セクションを参照してください。 |
|
WS2_32.DLLが初期化されていません。 アプリケーションは、Windows ソケット関数 呼び出す前に、WSAStartup を最初に呼び出す必要があります。 |
操作を実行するためのメモリが不足していました。 |
備考
WSAStringToAddress 関数は、標準テキスト形式のネットワーク アドレスを、sockaddr 構造体の数値バイナリ形式に変換します。
アドレスの不足しているコンポーネントは、可能であれば、既定で妥当な値に設定されます。 たとえば、不足しているポート番号は既定で 0 になります。 呼び出し元が特定のプロバイダーによって翻訳を実行する場合は、対応する WSAPROTOCOL_INFO 構造体を lpProtocolInfo パラメーターに指定する必要があります。
wsAStringToAddress 関数は、sockaddr 構造体の形式で lpAddress パラメーターで渡される SOCKADDR_IN 構造体の sin_family メンバーがAF_INETまたはAF_INET6に設定されていない場合に失敗し、WSAEINVAL を返します。
WSAStringToAddress 関数を使用した IPv6 アドレスのサポートが、Service Pack 1 (SP1) 以降の Windows XP で追加されました。 IPv6 アドレスをサポートするには、WSAStringToAddress 関数のローカル コンピューターにも IPv6 をインストールする必要があります。
Windows Phone 8: この機能は、Windows Phone 8 以降の Windows Phone ストア アプリでサポートされています。
手記
winsock2.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして WSAStringToAddress を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8.1、Windows Vista [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリ |UWP アプリ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | winsock2.h |
ライブラリ | Ws2_32.lib |
DLL | Ws2_32.dll |
関連項目
InetNtop を
RtlIpv4AddressToString を
RtlIpv4AddressToStringEx の
RtlIpv4StringToAddress の
RtlIpv4StringToAddressEx の
RtlIpv6AddressToString を
RtlIpv6AddressToStringEx を
RtlIpv6StringToAddress の
RtlIpv6StringToAddressEx の
WSAAddressToString の
WSAStartup の
sockaddr を