IDWriteLocalizedStrings::GetStringLength メソッド (dwrite.h)
指定したインデックスを持つ文字列の文字数 (null 終端記号を含まない) を取得します。
構文
HRESULT GetStringLength(
UINT32 index,
[out] UINT32 *length
);
パラメーター
index
型: UINT32
言語と文字列のペアの 0 から始まるインデックス。
[out] length
種類: UINT32*
言語と文字列のペアからの文字列の長さ (null 終端記号を含まない)。
戻り値
型: HRESULT
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
解説
次のコードに示すように、 GetStringLength を使用して 、IDWriteLocalizedStrings::GetString メソッドを呼び出す前に文字列の長さを取得します。
UINT32 length = 0;
// Get the string length.
if (SUCCEEDED(hr))
{
hr = pFamilyNames->GetStringLength(index, &length);
}
// Allocate a string big enough to hold the name.
wchar_t* name = new (std::nothrow) wchar_t[length+1];
if (name == NULL)
{
hr = E_OUTOFMEMORY;
}
// Get the family name.
if (SUCCEEDED(hr))
{
hr = pFamilyNames->GetString(index, name, length+1);
}
要件
サポートされている最小のクライアント | Windows 7、Windows Vista SP2 と Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | dwrite.h |
Library | Dwrite.lib |
[DLL] | Dwrite.dll |