Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Pobiera ciąg skojarzony z tą właściwością i przechowuje go w buforze dostarczonym przez użytkownika.
Składnia
Parametry
buflen
[in] Maksymalna liczba znaków, które może przechowywać bufor dostarczony przez użytkownika.
rgString
[out] Zwraca ciąg.
[Tylko C++] rgString jest wskaźnikiem do buforu, który odbiera znaki Unicode ciągu. Ten bufor musi mieć rozmiar co najmniej znaków buflen (nie bajtów).
pceltFetched
[out] Gdzie zwracana jest liczba znaków przechowywanych w buforze. (Może być NULL w języku C++).
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu.
Uwagi
W języku C++należy zadbać o zapewnienie, że bufor ma co najmniej buflen długość znaków Unicode. Należy pamiętać, że znak Unicode ma długość 2 bajtów.
Uwaga
W języku C++zwracany ciąg nie zawiera znaku zerowego zakończenia. Jeśli zostanie podana, pceltFetched określi liczbę znaków w ciągu.
Przykład
CStringW RetrievePropertyString(IDebugProperty2 *pPropInfo)
{
CStringW returnString = L"";
CComQIPtr<IDebugProperty3> pProp3 = pPropInfo->pProperty;
If (pProp3 != NULL) {
ULONG dwStrLen = 0;
HRESULT hr;
hr = pProp3->GetStringCharLength(&dwStrLen);
if (SUCCEEDED(hr) && dwStrLen > 0) {
ULONG dwRead;
CStrBufW buf(returnString,dwStrLen,CStrBuf::SET_LENGTH);
hr = pProp3->GetStringChars(dwStrLen,
reinterpret_cast<WCHAR*>(static_cast<CStringW::PXSTR>(buf)),
&dwRead);
}
}
return(returnString);
}