IFsrmClassificationManager interface

[This interface is supported for compatibility but it's recommended to use the FSRM WMI Classes to manage FSRM. Please see the MSFT_FSRMClassification class.]

Manages file classification. Use this interface to define properties to use in classification, add classification rules for classifying files, define classification and storage modules, and enable classification reporting.

To get this interface, call the CoCreateInstanceEx function. Use CLSID_FsrmClassificationManager as the class identifier and __uuidof(IFsrmClassificationManager) as the interface identifier.


The IFsrmClassificationManager interface has these methods.

Method Description
IFsrmClassificationManager::CancelClassification Cancels classification if it is running.
IFsrmClassificationManager::ClearFileProperty Attempts to remove the specified property from the file or folder.
IFsrmClassificationManager::CreateModuleDefinition Creates a module definition of the specified type.
IFsrmClassificationManager::CreatePropertyDefinition Creates a property definition.
IFsrmClassificationManager::CreateRule Creates a rule of the specified type.
IFsrmClassificationManager::EnumFileProperties Enumerates the properties of the specified file.
IFsrmClassificationManager::EnumModuleDefinitions Enumerates the module definitions of the specified type.
IFsrmClassificationManager::EnumPropertyDefinitions Enumerates the property definitions.
IFsrmClassificationManager::EnumRules Enumerates the rules of the specified type.
IFsrmClassificationManager::get_ClassificationLastError The error message from the last time that classification was run.
IFsrmClassificationManager::get_ClassificationLastReportPathWithoutExtension The local directory path where the reports were stored the last time that classification ran.
IFsrmClassificationManager::get_ClassificationReportEnabled Determines whether classification reporting is enabled or not.
IFsrmClassificationManager::get_ClassificationReportFormats The list of formats in which to generate the classification reports.
IFsrmClassificationManager::get_ClassificationReportMailTo The email address to which to send the classification reports, if any.
IFsrmClassificationManager::get_ClassificationRunningStatus The running status of the classification.
IFsrmClassificationManager::get_Logging The types of logging to perform when running the classification rules.
IFsrmClassificationManager::GetFileProperty Retrieves the specified property from the file or folder.
IFsrmClassificationManager::GetModuleDefinition Retrieves the specified module definition.
IFsrmClassificationManager::GetPropertyDefinition Retrieves the specified property definition.
IFsrmClassificationManager::GetRule Retrieves the specified rule.
IFsrmClassificationManager::put_ClassificationReportEnabled Determines whether classification reporting is enabled or not.
IFsrmClassificationManager::put_ClassificationReportFormats The list of formats in which to generate the classification reports.
IFsrmClassificationManager::put_ClassificationReportMailTo The email address to which to send the classification reports, if any.
IFsrmClassificationManager::put_Logging The types of logging to perform when running the classification rules.
IFsrmClassificationManager::RunClassification Runs classification rules and generates the classification report.
IFsrmClassificationManager::SetFileProperty Sets the value of the specified property in the file or folder.
IFsrmClassificationManager::WaitForClassificationCompletion Waits for the specified period of time or until classification has finished running.


To create this object from a script, use the "Fsrm.FsrmClassificationManager" program identifier.

The classification feature lets you classify (tag) files. To do this the properties that can be associated with a file must first be defined using CreatePropertyDefinition. Once a property is defined it may be set using APIs such as SetFileProperty, retrieved using GetFileProperty or EnumFileProperties, or cleared using ClearFileProperty. ClassifyFiles performs these actions on multiple files. Alternatively a series of rules to automatically classify files can be created. If a rule applies to the file, the rule associates a property and property value with the file. The property can be stored separately from the file or stored in the file depending on the storage module available on the machine.

The built-in System Cache Storage Module stores the properties outside of the file using alternate data stream storage and the security descriptor (Windows Server 2012 and Windows 8 only). Storing the properties separately may result in them not moving when the file is moved.

The Office Storage Modules store the classification properties in the Office files themselves. One parser is for Office 97-2003 files, and the other is for Office 2007-2010 files. Office files that contain the classification properties in the file can have the properties displayed in SharePoint if the property names match the SharePoint column names. Updating the column values in SharePoint updates the properties in the file. Note that SharePoint treats these names as case-sensitive, therefore the property definition's name defined in FSRM must have the same case when uploading to SharePoint.

You can use the classification and storage plugins or you can implement your own classification and storage plugins. Note that the built-in Content Classifier plugin uses the IFilter interface to search the content of the file.

When you run classification, FSRM evaluates a files for any rule that is applicable to that file (and committed to FSRM) and enabled. If reporting is enabled, FSRM also generates the classification reports.


For examples in C# and PowerShell see Accessing Classification Properties.


Minimum supported client Windows 8
Minimum supported server Windows Server 2008 R2
Target Platform Windows
Header fsrmpipeline.h (include FsrmPipeline.h, FsrmTlb.h)

See also

FSRM Interfaces