Метод IDvdInfo2::GetDVDTextStringAsUnicode (strmif.h)
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Метод GetDVDTextStringAsUnicode
извлекает текстовую строку DVD для указанного языка и возвращает текстовую строку в виде строки Юникода.
Синтаксис
HRESULT GetDVDTextStringAsUnicode(
[in] ULONG ulLangIndex,
[in] ULONG ulStringIndex,
[out] WCHAR *pchwBuffer,
[in] ULONG ulMaxBufferSize,
[out] ULONG *pulActualSize,
[out] DVD_TextStringType *pType
);
Параметры
[in] ulLangIndex
Отсчитываемый от нуля индекс языка. Чтобы найти количество языков текстовых строк на DVD-диске, вызовите IDvdInfo2::GetDVDTextNumberOfLanguages.
[in] ulStringIndex
Отсчитываемый от нуля индекс извлекаемой строки. Чтобы найти количество строк для заданного языка, вызовите IDvdInfo2::GetDVDTextLanguageInfo.
[out] pchwBuffer
Указатель на буфер, получающий текстовую строку. Если pchBuffer имеет значение NULL, этот метод возвращает размер строки в pulActualSize.
[in] ulMaxBufferSize
Размер буфера pchBuffer в WCHAR.
[out] pulActualSize
Получает фактическую длину строки в символах, включая завершающее значение NULL.
[out] pType
Получает член перечисления DVD_TextStringType . Значение указывает тип текстовой строки, например название фильма или название песни. Этот параметр также может получать значения, не определенные в перечислении DVD_TextStringType .
Возвращаемое значение
Возвращает одно из следующих значений HRESULT .
Код возврата | Описание |
---|---|
|
Успешно. |
|
Неподдерживаемый te |
|
Недопустимый аргумент. |
|
Произошла непредвиденная внутренняя ошибка. |
Комментарии
Этот метод поддерживает текстовые строки, закодированные в Юникоде или 7-разрядном формате ASCII (ISO/IEC 646). Если в текстовой строке используется кодировка ASCII, метод преобразует строку в строку с расширенными символами. Если в текстовой строке используется любая другая кодировка, метод возвращает E_FAIL. В этом случае можно вызвать IDvdInfo2::GetDVDTextStringAsNative , чтобы получить строку в виде необработанного массива байтов. Чтобы найти набор символов, вызовите IDvdInfo2::GetDVDTextLanguageInfo.
Возвращаемая строка всегда содержит завершающее значение NULL. Если буфер меньше длины текстовой строки DVD, строка усекается. Чтобы найти требуемый размер буфера, вызовите метод один раз с pchBufferравным NULL и ulMaxBufferSize равным нулю. Размер возвращается в pulActualSize. Затем выделите буфер и вызовите метод еще раз.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | strmif.h (включая Dshow.h) |
Библиотека | Strmiids.lib |