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 |
设置指定的属性。 |
从指定的文件加载配置文件。 |
|
从指定的 XML 配置文件定义字符串加载配置文件。 |
|
比较两个 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] 一个布尔值,指示此配置文件是否是默认配置文件。 |
ProblemCategories |
pbstrProblemCategories |
[out] 指示此配置文件旨在检测的问题。 |