IFsrmClassificationManager
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
ファイルの分類を管理します。このインターフェースを使用して、分類で使用するプロパティの定義、ファイルを分類するための分類ルールの追加、分類モジュールおよびストレージモジュールの定義、分類レポートの有効化を行います。(IFsrmClassificationManager)
解説(Remarks)
このオブジェクトをスクリプトから作成するには、"Fsrm.FsrmClassificationManager" プログラム識別子を使用します。
分類機能を使用すると、ファイルを分類 (タグ付け) できます。そのためには、まずファイルに関連付けることができるプロパティを CreatePropertyDefinition で定義する必要があります。 プロパティを定義すると、 SetFileProperty などの API で値を設定したり、 GetFileProperty や EnumFileProperties で取得したり、 ClearFileProperty でクリアしたりできます。 ClassifyFiles は、これらの操作を複数のファイルに対して実行します。あるいは、ファイルを自動的に分類する一連のルールを作成することもできます。ルールがファイルに適用されると、そのルールはプロパティとプロパティ値をファイルに関連付けます。プロパティは、コンピューターで利用できるストレージモジュールに応じて、ファイルとは別に格納することも、ファイル内に格納することもできます。
組み込みの System Cache Storage Module は、代替データストリームストレージとセキュリティ記述子を使用して、プロパティをファイルの外部に格納します (Windows Server 2012 および Windows 8 のみ)。プロパティを別に格納した場合、ファイルを移動してもプロパティが一緒に移動しないことがあります。
Office Storage Module は、分類プロパティを Office ファイル自体の中に格納します。一方のパーサーは Office 97-2003 ファイル用、もう一方は Office 2007-2010 ファイル用です。分類プロパティをファイル内に保持している Office ファイルは、プロパティ名が SharePoint の列名と一致していれば、SharePoint 上でそのプロパティを表示できます。SharePoint で列の値を更新すると、ファイル内のプロパティも更新されます。なお、SharePoint はこれらの名前を大文字と小文字を区別して扱うため、FSRM で定義するプロパティ定義の名前は、SharePoint にアップロードする際に大文字と小文字が一致している必要があります。
用意されている分類プラグインおよびストレージプラグインを使用することも、独自の分類プラグインおよびストレージプラグインを実装することもできます。なお、組み込みの Content Classifier プラグインは、 IFilter インターフェースを使用してファイルの内容を検索します。
分類を実行すると、FSRM は各ファイルについて、そのファイルに適用でき (かつ FSRM にコミットされ)、有効になっているすべてのルールを評価します。レポートが有効になっている場合、FSRM は分類レポートも生成します。
例
C# および PowerShell の例については、 Accessing Classification Properties を参照してください。
メソッド 27
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
分類レポートを生成する形式の一覧です。(Get)
| formats | SAFEARRAY** | out | 分類レポートの出力形式の一覧を格納した SAFEARRAY を受け取るポインタである。 |
分類レポートを生成する形式の一覧です。(Put)
| formats | SAFEARRAY* | in | 分類レポートの出力形式として設定する一覧を格納した SAFEARRAY を指定する。 |
分類ルールの実行時に行うログ記録の種類です。(Get)
| logging | INT* | out | 分類処理のログ記録動作を制御するフラグの組み合わせを受け取るポインタである。 |
解説(Remarks)
FsrmClassificationLoggingFlags_ClassificationsInLogFile および FsrmClassificationLoggingFlags_ErrorsInLogFile のログオプションのログファイルは、 レポートディレクトリに格納されます。 FsrmClassificationLoggingFlags_ClassificationsInLogFile のログファイル名は "ClassifierName-FsrmServerName(FQDN)-TimeStamp.xml" です。 このログファイルには、特定のファイルへのプロパティ割り当てごとに 1 つのエントリが記録されます。各ログエントリには次の情報が含まれます。
- ファイル名 (フルパス)
- プロパティ
- 割り当てられた値
- 適用されたルール
- 結果 (分類が成功したかどうか)
- エラーコード
- ファイル名 (フルパス)
- プロパティ
- 適用されたルール
分類ルールの実行時に行うログ記録の種類です。(Put)
| logging | INT | in | 分類処理のログ記録動作を制御するフラグの組み合わせを指定する。 |
解説(Remarks)
FsrmClassificationLoggingFlags_ClassificationsInLogFile および FsrmClassificationLoggingFlags_ErrorsInLogFile のログオプションのログファイルは、 レポートディレクトリに格納されます。 FsrmClassificationLoggingFlags_ClassificationsInLogFile のログファイル名は "ClassifierName-FsrmServerName(FQDN)-TimeStamp.xml" です。 このログファイルには、特定のファイルへのプロパティ割り当てごとに 1 つのエントリが記録されます。各ログエントリには次の情報が含まれます。
- ファイル名 (フルパス)
- プロパティ
- 割り当てられた値
- 適用されたルール
- 結果 (分類が成功したかどうか)
- エラーコード
- ファイル名 (フルパス)
- プロパティ
- 適用されたルール
分類レポートの送信先メールアドレスです (指定する場合)。(Get)
| mailTo | LPWSTR* | out | 分類レポートの送信先メールアドレスを受け取る文字列ポインタである。 |
解説(Remarks)
このプロパティは省略可能です。
メールメッセージは、分類が正常に完了した場合にのみ送信されます。 FsrmReportType_ExportReport のレポートタイプではメールは送信されません。レポートはメールメッセージに添付されます。[Admin Email] を指定すると、管理者に通知を送信できます ( IFsrmSetting::AdminEmail プロパティが設定されている場合)。 件名は "<ReportType>: <ReportName>" です。メールメッセージの本文は空です。
分類レポートの送信先メールアドレスです (指定する場合)。(Put)
| mailTo | LPWSTR | in | 分類レポートの送信先として設定するメールアドレスを指定する文字列である。 |
解説(Remarks)
このプロパティは省略可能です。
メールメッセージは、分類が正常に完了した場合にのみ送信されます。 FsrmReportType_ExportReport のレポートタイプではメールは送信されません。レポートはメールメッセージに添付されます。[Admin Email] を指定すると、管理者に通知を送信できます ( IFsrmSetting::AdminEmail プロパティが設定されている場合)。 件名は "<ReportType>: <ReportName>" です。メールメッセージの本文は空です。
分類レポートが有効かどうかを決定します。(Get)
| reportEnabled | VARIANT_BOOL* | out | 分類レポートの生成が有効かどうかを示す VARIANT_BOOL を受け取るポインタである。 |
解説(Remarks)
分類がスケジュール実行された場合 (タスクスケジューラを使用) でも、オンデマンドで実行された場合 ( IFsrmClassificationManager::RunClassification を使用) でも、レポートの生成を制御します。
分類レポートが有効かどうかを決定します。(Put)
| reportEnabled | VARIANT_BOOL | in | 分類レポートの生成を有効にするかどうかを指定する VARIANT_BOOL である。 |
解説(Remarks)
分類がスケジュール実行された場合 (タスクスケジューラを使用) でも、オンデマンドで実行された場合 ( IFsrmClassificationManager::RunClassification を使用) でも、レポートの生成を制御します。
前回分類を実行したときにレポートが格納されたローカルディレクトリのパスです。
| lastReportPath | LPWSTR* | out | 最後に生成された分類レポートの拡張子を除いたパスを受け取る文字列ポインタである。 |
解説(Remarks)
レポートの生成に失敗した場合は、レポートが格納されるはずだったパスになります。このディレクトリには、失敗が発生する前に正常に完了したレポートが含まれていることがあります。パスは、 IFsrmReportManager::SetOutputDirectory に渡された値 (指定した場合) と、レポートのコンテキストによって決まります。
前回分類を実行したときのエラーメッセージです。
| lastError | LPWSTR* | out | 最後の分類処理で発生したエラーメッセージを受け取る文字列ポインタである。 |
解説(Remarks)
このプロパティは、 IFsrmClassificationManager::RunClassification を使用して手動で分類を実行した後、またはタスクスケジューラによってスケジュール実行された後に設定されます。
分類の実行状態です。
| runningStatus | FsrmReportRunningStatus* | out | 分類処理の現在の実行状態を示す FsrmReportRunningStatus 列挙値を受け取るポインタである。 |
解説(Remarks)
分類がスケジュール実行された場合 (タスクスケジューラを使用) でも、オンデマンドで実行された場合 ( IFsrmClassificationManager::RunClassification を使用) でも使用されます。
プロパティ定義を列挙します。
| options | FsrmEnumOptions | in | プロパティ定義を列挙するための 1 つ以上のオプション。指定できる値については、 FsrmEnumOptions 列挙型を参照してください。 |
| propertyDefinitions | IFsrmCollection** | out | プロパティ定義のコレクションを含む IFsrmCollection インターフェース。コレクション内の各項目は VT_DISPATCH 型の VARIANT です。バリアントの pdispVal メンバーに対して IFsrmPropertyDefinition インターフェースをクエリしてください。 このコレクションにはコミット済みのプロパティ定義のみが含まれます。新しく作成されたがコミットされていないプロパティ定義は含まれません。 |
戻り値
このメソッドは次の値を返します。
プロパティ定義を作成します。
| propertyDefinition | IFsrmPropertyDefinition** | out | 新しいプロパティ定義への IFsrmPropertyDefinition インターフェース。プロパティ定義を保存するには、 IFsrmPropertyDefinition::Commit メソッドを呼び出します。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
ファイルの分類に使用するプロパティを定義するために、プロパティ定義を作成します。1 つ以上の分類ルールでそのプロパティを指定できます。FSRM サーバーでは、プロパティ定義の数は 100 個に制限されています。
ルールまたはレポートジョブから参照されているプロパティは削除できません。
指定されたプロパティ定義を取得します。
| propertyName | LPWSTR | in | 取得するプロパティ定義の名前。 |
| propertyDefinition | IFsrmPropertyDefinition** | out | 取得されたプロパティ定義への IFsrmPropertyDefinition インターフェース。 |
戻り値
このメソッドは次の値を返します。
指定された種類のルールを列挙します。
| ruleType | FsrmRuleType | in | 列挙するルールの種類。指定できる値については、 FsrmRuleType 列挙型を参照してください。 メモ FsrmRuleType_Generic は、このメソッドでは有効な種類ではありません。
|
| options | FsrmEnumOptions | in | プロパティ定義を列挙するための 1 つ以上のオプション。指定できる値については、 FsrmEnumOptions 列挙型を参照してください。 メモ FsrmEnumOptions_Asynchronous オプションは、このメソッドではサポートされていません。
|
| Rules | IFsrmCollection** | out | 分類ルールのコレクションを含む IFsrmCollection インターフェース。コレクション内の各項目は VT_DISPATCH 型の VARIANT です。バリアントの pdispVal メンバーに対して IFsrmRule インターフェースをクエリしてください。その後、 IFsrmRule.RuleType プロパティを使用してルールの種類を判別できます。使用するルールのインターフェースを得るには、 IFsrmRule インターフェースに対してクエリします。たとえば、RuleType が FsrmRuleType_Classification の場合は、 IFsrmRule インターフェースに対して IFsrmClassificationRule インターフェースをクエリします。 このコレクションにはコミット済みのルールのみが含まれます。新しく作成されたがコミットされていないルールは含まれません。 |
戻り値
このメソッドは次の値を返します。
指定された種類のルールを作成します。
| ruleType | FsrmRuleType | in | 作成するルールの種類。このパラメーターには FsrmRuleType_Classification を設定します。 詳細については、FsrmRuleType を参照してください。 |
| Rule | IFsrmRule** | out | 新しいルールへの IFsrmRule インターフェース。 IFsrmRule インターフェースに対してクエリして、 IFsrmClassificationRule インターフェースを取得します。 ルールを保存するには、IFsrmRule::Commit メソッドを呼び出します。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
作成できるルールの数に制限はありません。 IFsrmRule.ModuleDefinitionName プロパティを使用して、ルールを分類モジュールに関連付けます。
FSRM は、ルールが実行される順序を保証しません。
指定されたルールを取得します。
| ruleName | LPWSTR | in | 取得するルールの名前。長さは 100 文字以内である必要があります。 |
| ruleType | FsrmRuleType | in | 取得するルールの種類。指定できる種類については、 FsrmRuleType 列挙型を参照してください。 メモ FsrmRuleType_Generic は、このメソッドではサポートされていません。
|
| Rule | IFsrmRule** | out | 取得されたルールへの IFsrmRule インターフェース。指定した種類に対応するインターフェースを得るには、 IFsrmRule インターフェースに対してクエリします。たとえば、ruleType が FsrmRuleType_Classification の場合は、 IFsrmRule インターフェースに対して IFsrmClassificationRule インターフェースをクエリします。 |
戻り値
このメソッドは次の値を返します。
指定された種類のモジュール定義を列挙します。
| moduleType | FsrmPipelineModuleType | in | 列挙するモジュールの種類。指定できる値については、 FsrmPipelineModuleType 列挙型を参照してください。 |
| options | FsrmEnumOptions | in | モジュールを列挙するための 1 つ以上のオプション。指定できる値については、 FsrmEnumOptions 列挙型を参照してください。 メモ FsrmEnumOptions_Asynchronous オプションは、このメソッドではサポートされていません。
|
| moduleDefinitions | IFsrmCollection** | out | モジュール定義のコレクションを含む IFsrmCollection インターフェース。コレクション内の各項目は VT_DISPATCH 型の VARIANT です。バリアントの pdispVal メンバーに対して IFsrmPipelineModuleDefinition インターフェースをクエリしてください。その後、 IFsrmPipelineModuleDefinition.ModuleType プロパティを使用してモジュールの種類を判別できます。使用するモジュールのインターフェースを得るには、 IFsrmPipelineModuleDefinition インターフェースに対してクエリします。たとえば、 ModuleType が FsrmPipelineModuleType_Classifier の場合は、 IFsrmPipelineModuleDefinition インターフェースに対して IFsrmClassifierModuleDefinition インターフェースをクエリします。 このコレクションにはコミット済みのモジュール定義のみが含まれます。新しく作成されたがコミットされていないモジュール定義は含まれません。 |
戻り値
このメソッドは次の値を返します。
指定された種類のモジュール定義を作成します。
| moduleType | FsrmPipelineModuleType | in | 作成するモジュールの種類 (分類モジュールやストレージモジュールなど)。指定できる種類については、 FsrmPipelineModuleType 列挙型を参照してください。 |
| moduleDefinition | IFsrmPipelineModuleDefinition** | out | 新しいモジュール定義への IFsrmPipelineModuleDefinition インターフェース。指定したモジュールに対応するインターフェースを得るには、 IFsrmPipelineModuleDefinition インターフェースに対してクエリします。たとえば、moduleType が FsrmPipelineModuleType_Classifier の場合は、 IFsrmPipelineModuleDefinition インターフェースに対して IFsrmClassifierModuleDefinition インターフェースをクエリします。 モジュール定義を保存するには、 IFsrmPipelineModuleDefinition::Commit メソッドを呼び出します。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
定義できるモジュールの数に制限はありません。
FSRM でモジュールを定義するだけでなく、そのクラスを COM に登録する必要もあります。この登録は、モジュールの種類に応じて IFsrmClassifierModuleImplementation または IFsrmStorageModuleImplementation を実装する COM クラスの登録である必要があります。
FSRM には、次の組み込みの分類モジュールが用意されています。Folder Classifier と Content Classifier です。Folder Classifier は、ファイルが格納されているフォルダーに基づいてファイルを分類します。Content Classifier は、Windows のテキスト抽出機能を使用してファイル内の文字列や正規表現を検索することで分類します。
FSRM には、次の 3 つの組み込みストレージモジュールが用意されています。
- System Cache Storage Module — プロパティを NTFS の代替データストリームのキャッシュに格納します。
- Office 97 - 2003 In-File Storage Module — プロパティを Microsoft Office 97 - 2003 のファイル内に格納します。
- Office 2007 In-File Storage Module — プロパティを Microsoft Office 2007 以降のファイル内に格納します。
指定されたモジュール定義を取得します。
| moduleName | LPWSTR | in | 取得するモジュールの名前。長さは 100 文字以内である必要があります。 |
| moduleType | FsrmPipelineModuleType | in | 取得するモジュールの種類。指定できる種類については、 FsrmPipelineModuleType 列挙型を参照してください。 |
| moduleDefinition | IFsrmPipelineModuleDefinition** | out | 取得されたモジュール定義への IFsrmPipelineModuleDefinition インターフェース。指定したモジュールに対応するインターフェースを得るには、 IFsrmPipelineModuleDefinition インターフェースに対してクエリします。たとえば、moduleType が FsrmPipelineModuleType_Classifier の場合は、 IFsrmPipelineModuleDefinition インターフェースに対して IFsrmClassifierModuleDefinition インターフェースをクエリします。 |
戻り値
このメソッドは次の値を返します。
分類ルールを実行し、分類レポートを生成します。
| context | FsrmReportGenerationContext | in | 分類レポートの書き込み先となるレポートのサブディレクトリを指定します。指定できる値については、 FsrmReportGenerationContext 列挙型を参照してください。 レポートディレクトリを設定するには、 IFsrmReportManager::SetOutputDirectory メソッドを呼び出します。 |
| reserved | LPWSTR | in | NULL である必要があります。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
分類を実行するには、少なくとも 1 つのプロパティが定義されており、定義済みプロパティのいずれかを参照するルールが少なくとも 1 つ存在し、分類モジュールが登録されている必要があります。
このメソッドを呼び出したときに分類が既にキューに入っているか実行中の場合、このメソッドはエラーを返します。分類が実行中かどうかを確認するには、 IFsrmClassificationManager.ClassificationRunningStatus プロパティを参照します。分類が成功したかどうかを確認するには、 ClassificationLastError プロパティを参照します。
分類レポートは、レポートが有効になっている場合にのみ生成されます ( IFsrmClassificationManager.ClassificationReportEnabled プロパティを参照)。
分類をスケジュール実行するには、タスクスケジューラを使用します。バージョン 1.0 のタスクを作成してください。実行するコマンドは C:\Windows\System32\StorRept.exe です。StorRept.exe の引数には "classification run" を指定します。StorRept.exe は FsrmReportGenerationContext_ScheduledReport のレポートコンテキストを使用します。
ルール、ファイル、キャッシュが有効で変更されていない場合、FSRM は分類ルールを適用しません。
指定した時間が経過するまで、または分類の実行が完了するまで待機します。
| waitSeconds | INT | in | 分類とレポートの完了を待機する秒数。指定した期間が経過するか、分類とレポートが完了すると、このメソッドは制御を返します。無期限に待機するには、値を –1 に設定します。値は –1 から 2,147,483 の範囲でなければなりません。 |
| completed | VARIANT_BOOL* | out | レポートが完了した場合は VARIANT_TRUE、それ以外の場合は VARIANT_FALSE です。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
分類を実行するには、 IFsrmClassificationManager::RunClassification メソッドを呼び出します。
WaitForClassificationCompletion から制御が返された後、 IFsrmClassificationManager.ClassificationLastError プロパティを参照して、レポートが正常に完了したかどうかを確認します。
分類が実行中の場合、それをキャンセルします。
戻り値
このメソッドは次の値を返します。
解説(Remarks)
IFsrmClassificationManager::RunClassification メソッドを使用して手動で開始された分類、またはスケジュールによって開始された分類をキャンセルします (スケジュールによる分類の実行の詳細については、 RunClassification を参照してください)。
指定されたファイルのプロパティを列挙します。
| filePath | LPWSTR | in | 列挙するプロパティを含むファイル。ファイルへの絶対パスを指定する必要があります。ファイル共有は指定できません。 |
| options | FsrmGetFilePropertyOptions | in | ファイルのプロパティを列挙する際に使用するオプション。指定できる値については、 FsrmGetFilePropertyOptions 列挙型を参照してください。 |
| fileProperties | IFsrmCollection** | out | ファイルプロパティのコレクションを含む IFsrmCollection インターフェース。コレクション内の各項目は VT_DISPATCH 型の VARIANT です。バリアントの pdispVal メンバーに対して IFsrmProperty インターフェースをクエリしてください。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
FSRM は、指定されたストレージモジュール (options パラメーターを参照) に対して、それぞれが担当するファイルのすべてのプロパティを返すよう要求します。プロパティをファイルに埋め込むストレージモジュールの場合、この一覧にはファイルに埋め込まれているすべてのプロパティ (FSRM で定義されたものだけではありません) が含まれます。
options パラメーターに FsrmGetFilePropertyOptions_None を指定した場合、FSRM は正しい値が返されるようにファイルの分類を再実行します。
例
C# および PowerShell の例については、 Accessing Classification Properties を参照してください。
ファイルまたはフォルダーから指定されたプロパティを取得します。
| filePath | LPWSTR | in | 取得するプロパティを含むファイル。ファイルへの絶対パスを指定する必要があります。ファイル共有は指定できません。 |
| propertyName | LPWSTR | in | 取得するプロパティの名前。長さは 100 文字以内である必要があります。 |
| options | FsrmGetFilePropertyOptions | in | ファイルのプロパティを取得する際に使用するオプション。指定できる値については、 FsrmGetFilePropertyOptions 列挙型を参照してください。 |
| property | IFsrmProperty** | out | 取得されたプロパティへの IFsrmProperty インターフェース。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
FSRM は、指定されたストレージモジュール (options パラメーターを参照) に対して、ファイルからプロパティを取得するよう要求します。options パラメーターに FsrmGetFilePropertyOptions_None を指定した場合、FSRM は正しい値が返されるようにファイルの分類を再実行します。
例
C# および PowerShell の例については、 Accessing Classification Properties を参照してください。
ファイルまたはフォルダー内の指定されたプロパティの値を設定します。
| filePath | LPWSTR | in | 設定するプロパティを含むファイル。ファイルへの絶対パスを指定する必要があります。ファイル共有は指定できません。 |
| propertyName | LPWSTR | in | 値を設定するプロパティの名前。 |
| propertyValue | LPWSTR | in | 指定したプロパティに設定する値。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
このメソッドは、プロパティ値がそのプロパティの型として有効かどうかを検証します。たとえば、順序付きリストや複数選択リストの場合は値がリストのメンバーであること、Boolean プロパティの場合は値が文字列 "0" または "1" であること、日付の場合は値が文字列として表現された 64 ビットの 10 進値であることを確認します。
SetFileProperty は、 AppliesTo プロパティに FsrmPropertyDefinitionAppliesTo_Files (1) ビットが設定されている、サーバー上で利用可能なプロパティ定義のみをサポートします。
例
C# および PowerShell の例については、 Accessing Classification Properties を参照してください。
指定されたプロパティをファイルまたはフォルダーから削除しようとします。
| filePath | LPWSTR | in | 削除するプロパティを含むファイル。ファイルへの絶対パスを指定する必要があります。ファイル共有は指定できません。 |
| property | LPWSTR | in | ファイルから削除するプロパティの名前。 |
戻り値
このメソッドは次の値を返します。
解説(Remarks)
ストレージモジュールがプロパティを削除できる場合、プロパティはファイルから削除されます。削除できない場合は、次の表の値を使用してプロパティの値がクリアされます。
| プロパティの型 | クリア後の値 |
|---|---|
| Boolean | |
| Date | |
| Hierarchy | |
| Integer | |
| Multiple choice list | |
| Single choice list | |
| Multi-string | |
| Ordered list | |
| String | 空文字列 |
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IFsrmClassificationManager "{D2DC89DA-EE91-48A0-85D8-CC72A56F7D04}" #usecom global IFsrmClassificationManager IID_IFsrmClassificationManager "{B15C0E47-C391-45B9-95C8-EB596C853F3A}" #comfunc global IFsrmClassificationManager_get_ClassificationReportFormats 7 var #comfunc global IFsrmClassificationManager_put_ClassificationReportFormats 8 var #comfunc global IFsrmClassificationManager_get_Logging 9 var #comfunc global IFsrmClassificationManager_put_Logging 10 int #comfunc global IFsrmClassificationManager_get_ClassificationReportMailTo 11 var #comfunc global IFsrmClassificationManager_put_ClassificationReportMailTo 12 wstr #comfunc global IFsrmClassificationManager_get_ClassificationReportEnabled 13 var #comfunc global IFsrmClassificationManager_put_ClassificationReportEnabled 14 int #comfunc global IFsrmClassificationManager_get_ClassificationLastReportPathWithoutExtension 15 var #comfunc global IFsrmClassificationManager_get_ClassificationLastError 16 var #comfunc global IFsrmClassificationManager_get_ClassificationRunningStatus 17 var #comfunc global IFsrmClassificationManager_EnumPropertyDefinitions 18 int,sptr #comfunc global IFsrmClassificationManager_CreatePropertyDefinition 19 sptr #comfunc global IFsrmClassificationManager_GetPropertyDefinition 20 wstr,sptr #comfunc global IFsrmClassificationManager_EnumRules 21 int,int,sptr #comfunc global IFsrmClassificationManager_CreateRule 22 int,sptr #comfunc global IFsrmClassificationManager_GetRule 23 wstr,int,sptr #comfunc global IFsrmClassificationManager_EnumModuleDefinitions 24 int,int,sptr #comfunc global IFsrmClassificationManager_CreateModuleDefinition 25 int,sptr #comfunc global IFsrmClassificationManager_GetModuleDefinition 26 wstr,int,sptr #comfunc global IFsrmClassificationManager_RunClassification 27 int,wstr #comfunc global IFsrmClassificationManager_WaitForClassificationCompletion 28 int,var #comfunc global IFsrmClassificationManager_CancelClassification 29 #comfunc global IFsrmClassificationManager_EnumFileProperties 30 wstr,int,sptr #comfunc global IFsrmClassificationManager_GetFileProperty 31 wstr,wstr,int,sptr #comfunc global IFsrmClassificationManager_SetFileProperty 32 wstr,wstr,wstr #comfunc global IFsrmClassificationManager_ClearFileProperty 33 wstr,wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IFsrmClassificationManager "{D2DC89DA-EE91-48A0-85D8-CC72A56F7D04}" #usecom global IFsrmClassificationManager IID_IFsrmClassificationManager "{B15C0E47-C391-45B9-95C8-EB596C853F3A}" #comfunc global IFsrmClassificationManager_get_ClassificationReportFormats 7 sptr #comfunc global IFsrmClassificationManager_put_ClassificationReportFormats 8 sptr #comfunc global IFsrmClassificationManager_get_Logging 9 sptr #comfunc global IFsrmClassificationManager_put_Logging 10 int #comfunc global IFsrmClassificationManager_get_ClassificationReportMailTo 11 sptr #comfunc global IFsrmClassificationManager_put_ClassificationReportMailTo 12 wstr #comfunc global IFsrmClassificationManager_get_ClassificationReportEnabled 13 sptr #comfunc global IFsrmClassificationManager_put_ClassificationReportEnabled 14 int #comfunc global IFsrmClassificationManager_get_ClassificationLastReportPathWithoutExtension 15 sptr #comfunc global IFsrmClassificationManager_get_ClassificationLastError 16 sptr #comfunc global IFsrmClassificationManager_get_ClassificationRunningStatus 17 sptr #comfunc global IFsrmClassificationManager_EnumPropertyDefinitions 18 int,sptr #comfunc global IFsrmClassificationManager_CreatePropertyDefinition 19 sptr #comfunc global IFsrmClassificationManager_GetPropertyDefinition 20 wstr,sptr #comfunc global IFsrmClassificationManager_EnumRules 21 int,int,sptr #comfunc global IFsrmClassificationManager_CreateRule 22 int,sptr #comfunc global IFsrmClassificationManager_GetRule 23 wstr,int,sptr #comfunc global IFsrmClassificationManager_EnumModuleDefinitions 24 int,int,sptr #comfunc global IFsrmClassificationManager_CreateModuleDefinition 25 int,sptr #comfunc global IFsrmClassificationManager_GetModuleDefinition 26 wstr,int,sptr #comfunc global IFsrmClassificationManager_RunClassification 27 int,wstr #comfunc global IFsrmClassificationManager_WaitForClassificationCompletion 28 int,sptr #comfunc global IFsrmClassificationManager_CancelClassification 29 #comfunc global IFsrmClassificationManager_EnumFileProperties 30 wstr,int,sptr #comfunc global IFsrmClassificationManager_GetFileProperty 31 wstr,wstr,int,sptr #comfunc global IFsrmClassificationManager_SetFileProperty 32 wstr,wstr,wstr #comfunc global IFsrmClassificationManager_ClearFileProperty 33 wstr,wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。