string 属性 (RPC)
[ string] 属性は、パラメーターが char、 byte、または w_char 型の配列へのポインターであることを示します。 準拠配列と同様に、[ string] パラメーターのサイズは実行時に決定されます。 準拠配列とは異なり、開発者は配列に関連付けられている長さを指定する必要はありません。 [string] 属性は 、strlen を呼び出して配列のサイズを決定するようにスタブに指示します。 [string] 属性は、[ length_is] 属性または [ last_is] 属性と同時に使用することはできません。
[in, string] 属性の組み合わせは、クライアントからサーバーのみに文字列を渡すようにスタブに指示します。 サーバーに割り当てられるメモリの量は、送信される文字列サイズに 1 を加えたものと同じです。
[ out, string] 属性は、スタブにサーバーからクライアントのみに文字列を渡すよう指示します。 C 言語の値による呼び出し設計では、すべての [出力] パラメーターをポインターにする必要があると主張しています。
[out] パラメーターはポインターである必要があり、既定では、すべてのポインター パラメーターは参照ポインターです。 参照ポインターは呼び出し中に変更されず、呼び出し前と同じメモリを指します。 文字列ポインターの場合、参照ポインターの追加制約は、クライアントがリモート プロシージャ呼び出しを行う前に十分な有効なメモリを割り当てる必要があります。 スタブは 、[out, string] 属性が示す文字列を、クライアント側で既に割り当てられているメモリに送信します。
次のトピックでは、文字列のリモート プロシージャ パラメーター プロトタイプについて説明します。