次の方法で共有


WsOpenListener 関数 (webservices.h)

指定したアドレスで "リッスン" を開始します。 リスナーを開くと、そのチャネルから受け入れられます。 オープンが成功した場合は、リスナー リソースを解放する前に 、WsCloseListener 関数を使用してリスナーを閉じる必要があります。

構文

HRESULT WsOpenListener(
  [in]           WS_LISTENER            *listener,
  [in]           const WS_STRING        *url,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

パラメーター

[in] listener

開く Listener オブジェクトへのポインター。 ポインターは有効な WS_LISTENER オブジェクトを参照する必要があり、参照される値は NULL にすることはできません。

[in] url

リスナーの URL アドレス文字列を含むオブジェクトへのポインター。

メモ URL は常にエスケープされた形式です。. URL にクエリ文字列またはフラグメントが含まれていない場合があります。 この URL には、ホスト名の部分に '+' または '*' のワイルドカード、ホスト名、またはリテラル IP アドレスを含めることができます。 URL の詳細については、「解説」を参照してください。
 

[in, optional] asyncContext

関数を非同期的に呼び出す方法に関する情報を持つ WS_ASYNC_CONTEXT オブジェクトへのポインター。 同期的にを呼び出す場合、値は NULL に設定されます。

[in, optional] error

関数 が失敗 した場合にエラーに関する追加情報を格納する必要があるWS_ERROR オブジェクトへのポインター。

戻り値

この関数は、これらの値のいずれかを返すことができます。

リターン コード 説明
WS_S_ASYNC
非同期操作はまだ保留中です。
WS_E_OPERATION_ABORTED
リスナーは、開いている間、または開いている前に中止されました。
WS_E_INVALID_OPERATION
リスナーの状態が正しくありません。
WS_E_ADDRESS_IN_USE
アドレスは既に使用されています。
WS_E_ADDRESS_NOT_AVAILABLE
アドレスは、このコンテキストでは無効です。
WS_E_QUOTA_EXCEEDED
クォータを超えました。
WS_E_OPERATION_ABORTED
操作が中止されました。
WS_E_OPERATION_TIMED_OUT
割り当てられた時間内に操作が完了しませんでした。
E_OUTOFMEMORY
メモリ不足。
E_INVALIDARG
1 つ以上の引数が無効です。
その他のエラー
この関数は、上記以外のエラーを返す場合があります。

注釈

IPv6 アドレスを使用する場合は、ホスト名部分で角かっこで囲む必要があります。

詳細については、「 WS_HTTP_CHANNEL_BINDING」を参照してください。

WS_UDP_CHANNEL_BINDINGの場合、URL のパス部分は無視されます。 リテラル IP アドレスが指定されている場合はリッスンに使用され、それ以外の場合はワイルドカード IP アドレスが使用されます。

WS_TCP_CHANNEL_BINDINGの場合、URL のパス部分は、受信した URL に対するプレフィックスとして照合されます。
リテラル IP アドレスが指定されている場合はリッスンに使用され、それ以外の場合はワイルドカード IP アドレスが使用されます。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll