次の方法で共有


NdrConformantArrayUnmarshall 関数 (rpcndr.h)

NdrConformantArrayUnmarshall 関数は、準拠する配列をアンマーサルします。

構文

unsigned char * NdrConformantArrayUnmarshall(
  [in]  PMIDL_STUB_MESSAGE pStubMsg,
  [out] unsigned char      **ppMemory,
  [in]  PFORMAT_STRING     pFormat,
  [in]  unsigned char      fMustAlloc
);

パラメーター

[in] pStubMsg

RPC スタブの現在の状態を維持する MIDL_STUB_MESSAGE 構造体へのポインター。 この構造体は内部使用のみを目的としており、変更しないでください。

[out] ppMemory

準拠する配列が未指定のバッファーへのポインターへのアドレス。 null に設定されている場合、または fMustAllocTRUE に設定されている場合、スタブによってメモリが割り当てられます。

[in] pFormat

書式指定文字列の説明へのポインター。

[in] fMustAlloc

スタブが、準拠する配列をマーシャリングするメモリを割り当てる必要があるかどうかを指定するフラグ。 RPC で ppMemory を割り当てる必要がある場合は TRUE を指定します

戻り値

成功した場合は null を 返します。 エラーが発生した場合、関数は次のいずれかの例外コードをスローします。

リターン コード 説明
RPC_BAD_STUB_DATA
ネットワークが正しくありません。
RPC_X_INVALID_BOUND
ネットワークが正しくありません。
RPC_S_OUT_OF_MEMORY
システムがメモリ不足です。
STATUS_ACCESS_VIOLATION
アクセス違反が発生しました。
RPC_S_INTERNAL_ERROR
RPC でエラーが発生しました。

解説

NdrConformantArrayUnmarshall 関数は、クライアント側スタブとサーバー側スタブの両方で使用され、準拠する配列のマーシャリングを解除します。 スタブは、必要に応じてメモリを割り当てることができます。 たとえば、このページのサンプルの pArray は、適合する配列を指しています。

NdrConformantArrayUnmarshall は、クライアントまたはサーバー スタブが初期化された後、RPC スタブのコンテキストでのみ呼び出す必要があります。

void  ConfArray([in] long size,
        [in,size_is(size)] long *pArray);         // conformant array

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー rpcndr.h (Rpc.h を含む)
Library Rpcrt4.lib
[DLL] Rpcrt4.dll