Share via


WindowsCreateString 関数 (winstring.h)

指定したソース文字列に基づいて新しい HSTRING を作成します。

構文

HRESULT WindowsCreateString(
  PCNZWCH sourceString,
  UINT32  length,
  HSTRING *string
);

パラメーター

sourceString

型: [in, optional] LPCWSTR

新しい HSTRING のソースとして使用する null で終わる文字列。 新しい文字列、空の文字列、または NULL 文字列を作成するには、sourceStringNULL長さとして 0 を渡します。

length

型: [in] UINT32

sourceString の長さ (Unicode 文字)。 sourceStringNULL の場合は 0 にする必要があります。

string

型: [out] HSTRING*

新しく作成された HSTRING へのポインター。エラーが発生した場合は NULL文字列内の既存のコンテンツはすべて上書きされます。 HSTRING は標準ハンドル型です。

戻り値

種類: HRESULT

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

リターン コード 説明
S_OK
HSTRING が正常に作成されました。
E_INVALIDARG
stringNULL です
E_OUTOFMEMORY
新しい HSTRING を割り当てませんでした。
E_POINTER
sourceStringNULL で、 長さは 0 以外です。

注釈

WindowsCreateString 関数を使用して、新しい HSTRING を割り当てます。 Windows ランタイムは、新しい HSTRING のバッキング バッファーに文字列をコピーし、参照カウントを使用してバッファーの有効期間を管理します。 WindowsCreateStringReference 関数を呼び出して、コピーせずに既存の文字列を使用する高速パス文字列を作成します。

WindowsDeleteString 関数を呼び出して、HSTRING の割り当てを解除します。 WindowsCreateString 関数の各呼び出しは、WindowsDeleteString の呼び出しと一致する必要があります。

新しい文字列、空の文字列、または NULL 文字列を作成するには、sourceStringNULL長さとして 0 を渡します。

sourceString に null 文字が埋め込まれている場合、WindowsCreateString 関数は、すべての文字を終端の null 文字にコピーします。

要件

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

こちらもご覧ください

WindowsCreateStringReference

WindowsDeleteString