Поделиться через


Класс CMFCFilterChunkValueImpl

Это класс, который упрощает логику пар значений блоков и свойств.

Синтаксис

class CMFCFilterChunkValueImpl : public ATL::IFilterChunkValue;

Участники

Открытые конструкторы

Имя Описание
CMFCFilterChunkValueImpl::~CMFCFilterChunkValueImpl Деструкция объекта.
CMFCFilterChunkValueImpl::CMFCFilterChunkValueImpl Создает объект.

Открытые методы

Имя Описание
CMFCFilterChunkValueImpl::Clear Очищает chunkValue.
CMFCFilterChunkValueImpl::CopyChunk Копирует этот блок в структуру, описывающую характеристики блока.
CMFCFilterChunkValueImpl::CopyFrom Инициализирует это значение блока из другого значения.
CMFCFilterChunkValueImpl::GetChunkGUID Извлекает GUID блока.
CMFCFilterChunkValueImpl::GetChunkPID Извлекает кусок PID (идентификатор свойства).
CMFCFilterChunkValueImpl::GetChunkType Возвращает тип блока.
CMFCFilterChunkValueImpl::GetString Извлекает строковое значение.
CMFCFilterChunkValueImpl::GetValue Извлекает значение в виде выделенного propvariant.
CMFCFilterChunkValueImpl::GetValueNoAlloc Возвращает значение, не выделенное (внутреннее значение).
CMFCFilterChunkValueImpl::IsValid Проверяет, является ли это значение допустимым или нет.
CMFCFilterChunkValueImpl::SetBoolValue Перегружен. Задает свойство по ключу логическое значение.
CMFCFilterChunkValueImpl::SetDwordValue Задает свойство по ключу DWORD.
CMFCFilterChunkValueImpl::SetFileTimeValue Задает свойство по ключу для файлового времени.
CMFCFilterChunkValueImpl::SetInt64Value Задает свойство по ключу int64.
CMFCFilterChunkValueImpl::SetIntValue Задает свойство по ключу int.
CMFCFilterChunkValueImpl::SetLongValue Задает свойство по ключу long.
CMFCFilterChunkValueImpl::SetSystemTimeValue Задает свойство по ключу SystemTime.
CMFCFilterChunkValueImpl::SetTextValue Задает свойство по ключу строке Юникода.

Защищенные методы

Имя Описание
CMFCFilterChunkValueImpl::SetChunk Вспомогающая функция, которая задает общие свойства блока.

Замечания

Чтобы использовать, просто создайте класс CMFCFilterChunkValueImpl правильного типа

Пример:

Блок CMFCFilterChunkValueImpl;

hr = chunk. SetBoolValue(PKEY_IsAttachment, true);

or

hr = chunk. SetFileTimeValue(PKEY_ItemDate, ftLastModified);

Иерархия наследования

ATL::IFilterChunkValue

CMFCFilterChunkValueImpl

Требования

Заголовок: afxwin.h

CMFCFilterChunkValueImpl::Clear

Очищает chunkValue.

void Clear();

Замечания

CMFCFilterChunkValueImpl::CMFCFilterChunkValueImpl

Создает объект.

CMFCFilterChunkValueImpl();

Замечания

CMFCFilterChunkValueImpl::~CMFCFilterChunkValueImpl

Деструкция объекта.

virtual ~CMFCFilterChunkValueImpl();

Замечания

CMFCFilterChunkValueImpl::CopyChunk

Копирует этот блок в структуру, описывающую характеристики блока.

HRESULT CopyChunk(STAT_CHUNK* pStatChunk);

Параметры

pStatChunk
Указатель на целевое значение, описывающее характеристики блока.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::CopyFrom

Инициализирует это значение блока из другого значения.

void CopyFrom (IFilterChunkValue* pValue);

Параметры

pValue
Указывает исходное значение для копирования.

Замечания

CMFCFilterChunkValueImpl::GetChunkGUID

Извлекает GUID блока.

REFGUID GetChunkGUID() const;

Возвращаемое значение

Ссылка на GUID, определяющая блок.

Замечания

CMFCFilterChunkValueImpl::GetChunkPID

Извлекает кусок PID (идентификатор свойства).

DWORD GetChunkPID() const;

Возвращаемое значение

Значение DWORD, содержащее идентификатор свойства.

Замечания

CMFCFilterChunkValueImpl::GetChunkType

Извлекает тип блока.

CHUNKSTATE GetChunkType() const;

Возвращаемое значение

Перечисленное значение CHUNKSTATE, указывающее, является ли текущий блок свойством текстового типа или свойством типа значения.

Замечания

CMFCFilterChunkValueImpl::GetString

Извлекает строковое значение.

CString &GetString();

Возвращаемое значение

Строка, содержащая значение блока.

Замечания

CMFCFilterChunkValueImpl::GetValue

Извлекает значение в виде выделенного propvariant.

HRESULT GetValue(PROPVARIANT** ppPropVariant);

Параметры

ppPropVariant
Когда функция возвращается, этот параметр содержит значение блока.

Возвращаемое значение

S_OK, если PROPVARIANT был успешно выделен, а значение блока успешно скопировано в ppPropVariant; в противном случае — код ошибки.

Замечания

CMFCFilterChunkValueImpl::GetValueNoAlloc

Возвращает значение, не выделенное (внутреннее значение).

PROPVARIANT GetValueNoAlloc ();

Возвращаемое значение

Возвращает текущее значение блока.

Замечания

CMFCFilterChunkValueImpl::IsValid

Проверяет, является ли это значение допустимым или нет.

BOOL IsValid() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если текущее значение блока является допустимым; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

CMFCFilterChunkValueImpl::SetBoolValue

Перегружен. Задает свойство по ключу логическое значение.

HRESULT SetBoolValue(
    REFPROPERTYKEY pkey,
    BOOL bVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

HRESULT SetBoolValue(
    REFPROPERTYKEY pkey,
    VARIANT_BOOL bVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

bVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetChunk

Вспомогающая функция, которая задает общие свойства блока.

HRESULT SetChunk(
    REFPROPERTYKEY pkey,
    CHUNKSTATE chunkType=CHUNK_VALUE,
    LCID locale=0,
    DWORD cwcLenSource=0,
    DWORD cwcStartSource=0,
    CHUNK_BREAKTYPE chunkBreakType=CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetDwordValue

Задайте свойство по ключу DWORD.

HRESULT SetDwordValue(
    REFPROPERTYKEY pkey,
    DWORD dwVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

dwVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetFileTimeValue

Задайте для свойства ключом значение filetime.

HRESULT SetFileTimeValue(
    REFPROPERTYKEY pkey,
    FILETIME dtVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

dtVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetInt64Value

Задайте свойство по ключу int64.

HRESULT SetInt64Value(
    REFPROPERTYKEY pkey,
    __int64 nVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

nVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetIntValue

Задайте свойство по ключу int.

HRESULT SetIntValue(
    REFPROPERTYKEY pkey,
    int nVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

nVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetLongValue

Задайте для свойства ключом значение LONG.

HRESULT SetLongValue(
    REFPROPERTYKEY pkey,
    long lVal,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

lVal
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetSystemTimeValue

Задает свойство по ключу SystemTime.

HRESULT SetSystemTimeValue(
    REFPROPERTYKEY pkey,
    const SYSTEMTIME& systemTime,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale=0,
    DWORD cwcLenSource=0,
    DWORD cwcStartSource=0,
    CHUNK_BREAKTYPE chunkBreakType=CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

systemTime
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

CMFCFilterChunkValueImpl::SetTextValue

Задает свойство по ключу строке Юникода.

HRESULT SetTextValue(
    REFPROPERTYKEY pkey,
    LPCTSTR pszValue,
    CHUNKSTATE chunkType = CHUNK_VALUE,
    LCID locale = 0,
    DWORD cwcLenSource = 0,
    DWORD cwcStartSource = 0,
    CHUNK_BREAKTYPE chunkBreakType = CHUNK_NO_BREAK);

Параметры

pkey
Указывает ключ свойства.

pszValue
Указывает заданное значение блока.

chunkType
Флаги указывают, содержит ли этот блок текстовый тип или свойство типа значения. Значения флагов взяты из перечисления CHUNKSTATE.

локаль
Язык и подлангуга, связанные с блоком текста. Языковой стандарт блока используется индексаторами документов для выполнения правильного разбиения текста в словах. Если блок не является текстовым типом или типом значений с типом данных VT_LPWSTR, VT_LPSTR или VT_BSTR, это поле игнорируется.

cwcLenSource
Длина в символах исходного текста, из которого был получен текущий блок. Нулевое значение означает соответствие символьного по символам между исходным текстом и производным текстом. Ненулевое значение означает, что такая прямая связь не существует.

cwcStartSource
Смещение, из которого исходный текст для производного блока начинается в исходном блоке.

chunkBreakType
Тип разрыва, разделяющий предыдущий блок от текущего блока. Значения относятся к перечислению CHUNK_BREAKTYPE.

Возвращаемое значение

S_OK в случае успешного выполнения; в противном случае код ошибки.

Замечания

См. также

Классы