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


IProfile

Представляет профиль, которым управляет клиент. Интерфейс предоставляет функции, которые загружают профиль в формате XML из файла или строки. Клиент может определить, разрешено ли пользователю обновлять профиль, добавив или удалив трассировку событий для поставщиков Windows (ETW).

Синтаксис

{
  typedef enum
  {
    LoggingMode_Unknown,
    LoggingMode_Memory,
    LoggingMode_File,
  }
  CLoggingMode;
  typedef enum
  {
    DetailLevel_Unknown,
    DetailLevel_Light,
    DetailLevel_Verbose,
  }
  CDetailLevel;
  [propget, id(1), helpstring("IsMutable")] HRESULT IsMutable
    ([out, retval] VARIANT_BOOL* pfMutable);
  [propput, id(1), helpstring("IsMutable")] HRESULT IsMutable
    ([in] VARIANT_BOOL fMutable);  [propget, id(2), helpstring("Version")] HRESULT Version
    ([out, retval] float* pVersion);
  [propget, id(3), helpstring("Author")] HRESULT Author
    ([out, retval] BSTR* pbstrAuthor);
  [propget, id(4), helpstring("Team")] HRESULT Team
    ([out, retval] BSTR* pbstrTeam);
  [propget, id(5), helpstring("Comments")] HRESULT Comments
    ([out, retval] BSTR* pbstrComments);
  [propget, id(6), helpstring("Company")] HRESULT Company
    ([out, retval] BSTR* pbstrCompany);
  [propget, id(7), helpstring("Copyright")] HRESULT Copyright
    ([out, retval] BSTR* pbstrCopyright);
  [propget, id(8), helpstring("Tag")] HRESULT Tag
    ([out, retval] BSTR* pbstrTag);
  [propget, id(9), helpstring("Id")] HRESULT Id
    ([out, retval] BSTR* pbstrId);
  [propget, id(10), helpstring("Name")] HRESULT Name
    ([out, retval] BSTR* pbstrName);
  [propget, id(11), helpstring("Description")] HRESULT Description
    ([out, retval] BSTR* pbstrDescription);
  [propget, id(12), helpstring("LoggingMode")] HRESULT LoggingMode
    ([out, retval] CLoggingMode* pLoggingMode);
  [propget, id(13), helpstring("LoggingModeString")] HRESULT LoggingModeString
    ([out, retval] BSTR* pbstrLoggingMode);
  [propget, id(14), helpstring("DetailLevel")] HRESULT DetailLevel
    ([out, retval] CDetailLevel* pDetailLevel);
  [propget, id(15), helpstring("DetailLevelString")] HRESULT DetailLevelString
    ([out, retval] BSTR* pbstrDetailLevel);
  [propget, id(16), helpstring("IsStrict")] HRESULT IsStrict
    ([out, retval] VARIANT_BOOL* pfStrict);
  [propget, id(17), helpstring("IsDefault")] HRESULT IsDefault
    ([out, retval] VARIANT_BOOL* pfDefault);
  [propget, id(18), helpstring("ProblemCategories")] HRESULT ProblemCategories
    ([out, retval] BSTR* pbstrProblemCategories);
  [id(19), helpstring("LoadFromFile")] HRESULT LoadFromFile
    ([in] BSTR bstrProfileName,
    [in] BSTR bstrFileName);
  [id(20), helpstring("LoadFromString")] HRESULT LoadFromString
    ([in] BSTR bstrProfile);
  [id(21), helpstring("IsEqual")] HRESULT IsEqual
    ([in] IProfile* pProfile);};

Функции

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

Функция Описание

propget

Возвращает значение заданного свойства.

propput

Задает указанное свойство.

LoadFromFile

Загружает профиль из указанного файла.

LoadFromString

Загружает профиль из указанной строки определения профиля XML.

IsEqual

Сравнивает два объекта IProfile .

Свойства

Этот интерфейс предоставляет свойства, описанные в следующей таблице.

Свойство Параметры Описание

IsMutable

pfMutable

[out] Возвращает логическое значение, указывающее, что сеансы и поставщики могут быть добавлены в существующий профиль при объединении профилей с тем же именем с методом IProfileCollection::Add . S_OK указывает на успешное выполнение.

IsMutable

fMutable

[in] Логическое значение, указывающее, можно ли добавлять сеансы и поставщики в профили. S_OK указывает на успешное выполнение.

Версия

pVersion

[out] Указывает версию профилей.

Автор

pbstrAuthor

[out] Указывает автора профилей.

Команда

pbstrTeam

[out] Указывает команду, создающую профили.

Комментарии

pbstrComments

[out] Необязательные комментарии о профилях.

Company

pbstrCompany

[out] Указывает компанию, создающую профили.

Авторские права

pbstrCopyright

[out] Указывает сведения об авторских правах, связанные с профилями.

Тег

pbstrTag

[out] Необязательное значение с тегом, которое можно использовать для различения профилей.

Id

pbstrId

[out] Указывает идентификатор профиля.

имя;

pbstrName

[out] Указывает имя профиля.

Описание

pbstrDescription

[out] Указывает описание профиля.

LoggingMode

pLoggingMode

[out] Указывает режим ведения журнала.

LoggingModeString

pbstrLoggingMode

[out] Указывает строку режима ведения журнала. Возможные значения: memory и file.

DetailLevel

pDetailLevel

[out] Указывает уровень детализации.

DetailLevelString

pbstrDetailLevel

[out] Указывает строку уровня детализации. Возможные значения: "verbose" и "light".

IsStrict

pfStrict

[out] Логическое значение, указывающее, выполняется ли откат записи, если какой-либо сборщик или поставщик не запускается.

IsDefault

pfDefault

[out] Логическое значение, указывающее, является ли профиль по умолчанию.

Категории проблем

pbstrProblemCategories

[out] Указывает проблемы, которые этот профиль предназначен для обнаружения.

Интерфейсы