次の方法で共有


IUPnPServiceAsync::BeginQueryStateVariable メソッド (upnp.h)

BeginQueryStateVariable メソッドは、特定のサービスから状態変数値の非同期要求を開始します。 さらに、遅延したサービス制御プロトコルの説明 (SCPD) のダウンロードとイベント サブスクリプションにオプトインが示されていて、まだ実行されていない場合、このメソッドは SCPD のダウンロードとイベント サブスクリプションを開始します。

構文

HRESULT BeginQueryStateVariable(
  [in]           BSTR             bstrVariableName,
  [in, optional] IUPnPAsyncResult *pAsyncResult,
  [out]          PULONG64         pullRequestID
);

パラメーター

[in] bstrVariableName

要求された状態変数の値を指定します。

[in, optional] pAsyncResult

IUPnPAsyncResult オブジェクトへのポインター。 BeginQueryStateVariable 呼び出しが完了すると、UPnP は IUPnPAsyncResult::AsyncOperationComplete メソッドを使用してコントロール ポイントに通知します。

[out] pullRequestID

非同期 I/O 操作を識別するために使用される 64 ビット ULONG 値へのポインター。 UPnP コントロール ポイントは、 EndQueryStateVariable でこの操作を終了または取り消すときに、このハンドルを使用する必要があります。

戻り値

成功すると S_OK を返します。 それ以外の場合、メソッドは WinError.h で定義されている COM エラー コードまたは次のいずれかの値を返します。

リターン コード 説明
E_FAIL
非同期操作を開始できませんでした。
UPNP_E_INVALID_VARIABLE
bstrVariableName で示される要求された状態変数が存在しません。
 
メモ 一部の値は、UPnP 認定デバイスからエラーが受信されたことを示す場合があります。 詳細については、「 デバイス エラー コード」を参照してください。
 

解説

このメソッドを使用してイベント状態変数に対してクエリを実行する前に、イベント サブスクリプションを完了する必要があります。 これが発生しない場合は、 UPNP_E_VARIABLE_VALUE_UNKNOWN が返され、イベント サブスクリプションが内部的に行われます。 その結果、次の BeginQueryStateVariable 呼び出しは成功します。

メモ イベント変数のないサービスの場合、このメソッドは常に期待どおりに動作します。
 

要件

   
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー upnp.h
[DLL] Upnp.dll

関連項目

IUPnPServiceAsync

IUPnPServiceAsync::CancelAsyncOperation