Win32 API 日本語リファレンス
ホームStorage.FileServerResourceManager › IFsrmFileManagementJob

IFsrmFileManagementJob

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID0770687e-9f36-4d6f-8778-599d188461c9継承元IFsrmObject呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl12

公式ドキュメント

ファイル管理ジョブを定義します。

解説(Remarks)

ファイル管理ジョブが実行されると、指定されたフォルダー内のファイルがスキャンされ、フォルダー内のファイルがジョブで指定された条件を満たす場合、種類が有効期限切れ (expiration) であれば FSRM はそのファイルを指定された期限切れファイル フォルダーへ移動し、カスタム アクションが定義されていればそれを実行します。通知やアクションが指定されている場合、FSRM は通知を送信し、アクションを実行します。

有効期限切れの条件を指定するには、次のプロパティを使用します。

FSRM はすべての条件の論理 AND を取って、ファイルがそれらの条件を満たすかどうかを判定します。

FSRM はシステム ディレクトリ (たとえば "\Windows"、 "\System Volume Information"、"$Event"、 "$Recycle") 内のファイルを期限切れにしません。

メソッド 49

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 12 HRESULT get_Name(LPWSTR* name)

ファイル管理ジョブの名前です。(Get)

nameLPWSTR*outファイル管理ジョブの名前を受け取る文字列ポインタである。
vtbl 13 HRESULT put_Name(LPWSTR name)

ファイル管理ジョブの名前です。(Put)

nameLPWSTRinファイル管理ジョブに設定する名前を指定する文字列である。
vtbl 14 HRESULT get_NamespaceRoots(SAFEARRAY** namespaceRoots)

ファイル管理ジョブの実行時にスキャンされるローカル ディレクトリ パスの配列です。(Get)

namespaceRootsSAFEARRAY**outジョブの処理対象とする名前空間ルート (ディレクトリパス) の一覧を格納した SAFEARRAY を受け取るポインタである。

解説(Remarks)

指定した各パスの配下にあるすべてのサブディレクトリも (再帰的に) スキャンされます。

このジョブをスケジュールする場合は、 IFsrmReportScheduler::CreateScheduleTask メソッドを呼び出す際に同じ名前空間を指定してください。

このプロパティは、パスを検証するために IFsrmReportScheduler::VerifyNamespaces メソッドを呼び出します。検証の詳細については、 VerifyNamespaces の解説セクションを参照してください。

FSRM は NTFS ファイル システムのみをサポートすることに注意してください。ReFS、FAT、 FAT32、UDF、その他の NTFS 以外のファイル システム上のパスを指定することはできません。

vtbl 15 HRESULT put_NamespaceRoots(SAFEARRAY* namespaceRoots)

ファイル管理ジョブの実行時にスキャンされるローカル ディレクトリ パスの配列です。(Put)

namespaceRootsSAFEARRAY*inジョブの処理対象として設定する名前空間ルート (ディレクトリパス) の一覧を格納した SAFEARRAY を指定する。

解説(Remarks)

指定した各パスの配下にあるすべてのサブディレクトリも (再帰的に) スキャンされます。

このジョブをスケジュールする場合は、 IFsrmReportScheduler::CreateScheduleTask メソッドを呼び出す際に同じ名前空間を指定してください。

このプロパティは、パスを検証するために IFsrmReportScheduler::VerifyNamespaces メソッドを呼び出します。検証の詳細については、 VerifyNamespaces の解説セクションを参照してください。

FSRM は NTFS ファイル システムのみをサポートすることに注意してください。ReFS、FAT、 FAT32、UDF、その他の NTFS 以外のファイル システム上のパスを指定することはできません。

vtbl 16 HRESULT get_Enabled(VARIANT_BOOL* enabled)

ジョブが有効 (実行可能) かどうかを示します。(Get)

enabledVARIANT_BOOL*outファイル管理ジョブが有効かどうかを示す VARIANT_BOOL を受け取るポインタである。
vtbl 17 HRESULT put_Enabled(VARIANT_BOOL enabled)

ジョブが有効 (実行可能) かどうかを示します。(Put)

enabledVARIANT_BOOLinファイル管理ジョブを有効にするかどうかを指定する VARIANT_BOOL である。
vtbl 18 HRESULT get_OperationType(FsrmFileManagementType* operationType)

ファイル管理ジョブの種類です。この種類によって、すべての条件が満たされたときにファイルに対して実行する操作が決まります。(Get)

operationTypeFsrmFileManagementType*outジョブが実行する操作の種類を示す FsrmFileManagementType 列挙値を受け取るポインタである。

解説(Remarks)

種類が FsrmFileManagementType_Expiration の場合、FSRM はジョブの実行時に、ファイル管理ジョブのすべての条件を満たすファイルを ExpirationDirectory プロパティで指定されたパスへ移動します。

種類が FsrmFileManagementType_Custom の場合、FSRM はファイル管理ジョブの実行時に、ファイル管理ジョブのすべての条件を満たすすべてのファイルに対して CustomAction プロパティで指定されたカスタム アクションを実行します。

vtbl 19 HRESULT put_OperationType(FsrmFileManagementType operationType)

ファイル管理ジョブの種類です。この種類によって、すべての条件が満たされたときにファイルに対して実行する操作が決まります。(Put)

operationTypeFsrmFileManagementTypeinジョブが実行する操作の種類として設定する FsrmFileManagementType 列挙値を指定する。

解説(Remarks)

種類が FsrmFileManagementType_Expiration の場合、FSRM はジョブの実行時に、ファイル管理ジョブのすべての条件を満たすファイルを ExpirationDirectory プロパティで指定されたパスへ移動します。

種類が FsrmFileManagementType_Custom の場合、FSRM はファイル管理ジョブの実行時に、ファイル管理ジョブのすべての条件を満たすすべてのファイルに対して CustomAction プロパティで指定されたカスタム アクションを実行します。

vtbl 20 HRESULT get_ExpirationDirectory(LPWSTR* expirationDirectory)

期限切れファイルを格納するルート ディレクトリです。(Get)

expirationDirectoryLPWSTR*outファイルの有効期限切れ時に対象ファイルを移動する先のディレクトリのパスを受け取る文字列ポインタである。

解説(Remarks)

FSRM はジョブの実行時に、ファイル管理ジョブのすべての条件を満たすファイルをこのディレクトリへ移動します。そのため、実行中のプロセスには書き込み権限が必要です。また、このディレクトリは NTFS ボリューム上に存在する必要があります。

FSRM は期限切れディレクトリ内でファイルの現在のディレクトリ構造を維持するため、以前の場所を特定できます。たとえば、FSRM がファイル "C:\TestExpired\Test1.txt" を期限切れにした場合、期限切れルート ディレクトリには次のものが含まれます。

"FsrmServer(FQDN)\JobName_TimeStamp\C$\TestExpired\Test1.txt"

期限切れファイルの ACL はファイルとともに維持されます。

期限切れディレクトリが存在しない場合、FSRM は (管理者のアクセス権のみを持つ) ディレクトリを作成します。

NamespaceRoots のパス内にある期限切れディレクトリを指定しないでください。

OperationTypeFsrmFileManagementType_Expiration の場合にのみ指定してください。

vtbl 21 HRESULT put_ExpirationDirectory(LPWSTR expirationDirectory)

期限切れファイルを格納するルート ディレクトリです。(Put)

expirationDirectoryLPWSTRinファイルの有効期限切れ時に対象ファイルを移動する先のディレクトリのパスを指定する文字列である。

解説(Remarks)

FSRM はジョブの実行時に、ファイル管理ジョブのすべての条件を満たすファイルをこのディレクトリへ移動します。そのため、実行中のプロセスには書き込み権限が必要です。また、このディレクトリは NTFS ボリューム上に存在する必要があります。

FSRM は期限切れディレクトリ内でファイルの現在のディレクトリ構造を維持するため、以前の場所を特定できます。たとえば、FSRM がファイル "C:\TestExpired\Test1.txt" を期限切れにした場合、期限切れルート ディレクトリには次のものが含まれます。

"FsrmServer(FQDN)\JobName_TimeStamp\C$\TestExpired\Test1.txt"

期限切れファイルの ACL はファイルとともに維持されます。

期限切れディレクトリが存在しない場合、FSRM は (管理者のアクセス権のみを持つ) ディレクトリを作成します。

NamespaceRoots のパス内にある期限切れディレクトリを指定しないでください。

OperationTypeFsrmFileManagementType_Expiration の場合にのみ指定してください。

vtbl 22 HRESULT get_CustomAction(IFsrmActionCommand** action)

すべての条件が満たされたときに実行するアクションです。

actionIFsrmActionCommand**outジョブに関連付けられたカスタムアクション (実行コマンド) を表す IFsrmActionCommand インターフェイスを受け取るポインタである。

解説(Remarks)

カスタム アクションを作成するには、 IFsrmFileManagementJob::CreateCustomAction メソッドを呼び出します。

サポートされるマクロの一覧については、 IFsrmFileManagementJobManager::ActionVariables プロパティおよび IFsrmFileManagementJobManager::ActionVariableDescriptions プロパティに対して "get" 操作を実行してください。

vtbl 23 HRESULT get_Notifications(SAFEARRAY** notifications)

ジョブに対して定義された通知期間の一覧です。

notificationsSAFEARRAY**outジョブに設定された通知期間の一覧を表す IFsrmActionType 通知オブジェクトを格納した SAFEARRAY を受け取るポインタである。
vtbl 24 HRESULT get_Logging(INT* loggingFlags)

実行するログ記録の種類です。(Get)

loggingFlagsINT*outジョブのログ記録動作を制御するフラグの組み合わせを受け取るポインタである。

解説(Remarks)

ログ ファイルはレポート ディレクトリに格納されます。 FsrmFileManagementLoggingFlags_ClassificationsInLogFile のログ ファイル名は "FileManagement-FsrmServerName(FQDN)-FileManagementJobName-NotificationPeriod-TimeStamp.xml" です。 ログ ファイルには、処理された各ファイルに対して 1 つのエントリが含まれます。各ログ エントリは次の項目を示します。

vtbl 25 HRESULT put_Logging(INT loggingFlags)

実行するログ記録の種類です。(Put)

loggingFlagsINTinジョブのログ記録動作を制御するフラグの組み合わせを指定する。

解説(Remarks)

ログ ファイルはレポート ディレクトリに格納されます。 FsrmFileManagementLoggingFlags_ClassificationsInLogFile のログ ファイル名は "FileManagement-FsrmServerName(FQDN)-FileManagementJobName-NotificationPeriod-TimeStamp.xml" です。 ログ ファイルには、処理された各ファイルに対して 1 つのエントリが含まれます。各ログ エントリは次の項目を示します。

vtbl 26 HRESULT get_ReportEnabled(VARIANT_BOOL* reportEnabled)

ジョブの実行時にレポートを生成するかどうかを示します。(Get)

reportEnabledVARIANT_BOOL*outジョブのレポート生成が有効かどうかを示す VARIANT_BOOL を受け取るポインタである。

解説(Remarks)

ジョブは既定のレポートを生成し、ジョブ実行時に指定したコンテキストに関連付けられたフォルダーに配置します。

ファイル管理ジョブが (タスク スケジューラを使用して) スケジュールされたか、 (IFsrmFileManagementJob::Run を使用して) オンデマンドで実行されたかにかかわらず、レポート生成を制御します。

vtbl 27 HRESULT put_ReportEnabled(VARIANT_BOOL reportEnabled)

ジョブの実行時にレポートを生成するかどうかを示します。(Put)

reportEnabledVARIANT_BOOLinジョブのレポート生成を有効にするかどうかを指定する VARIANT_BOOL である。

解説(Remarks)

ジョブは既定のレポートを生成し、ジョブ実行時に指定したコンテキストに関連付けられたフォルダーに配置します。

ファイル管理ジョブが (タスク スケジューラを使用して) スケジュールされたか、 (IFsrmFileManagementJob::Run を使用して) オンデマンドで実行されたかにかかわらず、レポート生成を制御します。

vtbl 28 HRESULT get_Formats(SAFEARRAY** formats)

ジョブの実行時に生成するレポートの形式です。(Get)

formatsSAFEARRAY**outジョブが生成するレポートの出力形式の一覧を格納した SAFEARRAY を受け取るポインタである。

解説(Remarks)

ReportEnabledVARIANT_TRUE の場合、ジョブはレポートを生成します。

vtbl 29 HRESULT put_Formats(SAFEARRAY* formats)

ジョブの実行時に生成するレポートの形式です。(Put)

formatsSAFEARRAY*inジョブが生成するレポートの出力形式として設定する一覧を格納した SAFEARRAY を指定する。

解説(Remarks)

ReportEnabledVARIANT_TRUE の場合、ジョブはレポートを生成します。

vtbl 30 HRESULT get_MailTo(LPWSTR* mailTo)

レポートの送信先となる電子メール アドレスです (指定する場合)。(Get)

mailToLPWSTR*outジョブのレポートの送信先メールアドレスを受け取る文字列ポインタである。

解説(Remarks)

このプロパティは省略可能です。

電子メール メッセージは、ジョブが正常に完了した場合にのみ送信されます。 FsrmReportType_ExportReport のレポートの種類では電子メールは送信されません。レポートは電子メール メッセージに添付されます。 (IFsrmSetting::AdminEmail プロパティが設定されている場合) [Admin Email] を指定して管理者に通知を送信できます。 件名は "<ReportType>: <ReportName>" です。電子メール メッセージの本文は空です。

vtbl 31 HRESULT put_MailTo(LPWSTR mailTo)

レポートの送信先となる電子メール アドレスです (指定する場合)。(Put)

mailToLPWSTRinジョブのレポートの送信先として設定するメールアドレスを指定する文字列である。

解説(Remarks)

このプロパティは省略可能です。

電子メール メッセージは、ジョブが正常に完了した場合にのみ送信されます。 FsrmReportType_ExportReport のレポートの種類では電子メールは送信されません。レポートは電子メール メッセージに添付されます。 (IFsrmSetting::AdminEmail プロパティが設定されている場合) [Admin Email] を指定して管理者に通知を送信できます。 件名は "<ReportType>: <ReportName>" です。電子メール メッセージの本文は空です。

vtbl 32 HRESULT get_DaysSinceFileCreated(INT* daysSinceCreation)

ファイルが作成されてから経過した日数です。(Get)

daysSinceCreationINT*outファイル作成からの経過日数の条件値を受け取るポインタである。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの作成日からジョブの現在の実行日を引いた値が daysSinceCreation の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 33 HRESULT put_DaysSinceFileCreated(INT daysSinceCreation)

ファイルが作成されてから経過した日数です。(Put)

daysSinceCreationINTinジョブの処理対象とするファイル作成からの経過日数の条件値を指定する。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの作成日からジョブの現在の実行日を引いた値が daysSinceCreation の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 34 HRESULT get_DaysSinceFileLastAccessed(INT* daysSinceAccess)

ファイルが最後にアクセスされてから経過した日数です。(Get)

daysSinceAccessINT*outファイルの最終アクセスからの経過日数の条件値を受け取るポインタである。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの最終アクセス日からジョブの現在の実行日を引いた値が daysSinceAccess の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 35 HRESULT put_DaysSinceFileLastAccessed(INT daysSinceAccess)

ファイルが最後にアクセスされてから経過した日数です。(Put)

daysSinceAccessINTinジョブの処理対象とするファイルの最終アクセスからの経過日数の条件値を指定する。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの最終アクセス日からジョブの現在の実行日を引いた値が daysSinceAccess の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 36 HRESULT get_DaysSinceFileLastModified(INT* daysSinceModify)

ファイルが最後に変更されてから経過した日数です。(Get)

daysSinceModifyINT*outファイルの最終更新からの経過日数の条件値を受け取るポインタである。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの最終更新日からジョブの現在の実行日を引いた値が daysSinceModify の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 37 HRESULT put_DaysSinceFileLastModified(INT daysSinceModify)

ファイルが最後に変更されてから経過した日数です。(Put)

daysSinceModifyINTinジョブの処理対象とするファイルの最終更新からの経過日数の条件値を指定する。

解説(Remarks)

設定されていない場合、値は FsrmDaysNotSpecified です。

ファイルの最終更新日からジョブの現在の実行日を引いた値が daysSinceModify の値より小さい場合、ジョブはそのファイルについてこの条件が満たされたと見なします。

vtbl 38 HRESULT get_PropertyConditions(IFsrmCollection** propertyConditions)

ジョブに指定されたプロパティ条件の一覧です。

propertyConditionsIFsrmCollection**outジョブの処理対象を絞り込むプロパティ条件の集合を格納するコレクション IFsrmCollection を受け取るポインタである。

解説(Remarks)

ジョブにプロパティ条件を指定するには、 IFsrmFileManagementJob::CreatePropertyCondition メソッドを呼び出します。

vtbl 39 HRESULT get_FromDate(DOUBLE* fromDate)

ファイル管理ジョブがファイルの期限切れ処理 (期限切れファイル ディレクトリへのファイルの移動) を開始する日付です。このプロパティは、ファイル管理ジョブのカスタム コマンドにも適用されます。(Get)

fromDateDOUBLE*outジョブの対象期間の起点となる日時を表す DOUBLE 値 (DATE 形式) を受け取るポインタである。

解説(Remarks)

設定されていない場合、値は FsrmDateNotSpecified です。

fromDate の値がジョブの現在の実行日より前である場合、ジョブはファイルを期限切れにします。

通常、この日付は、指定した通知期間のうち最も短いものより大きい値に設定します。これにより、ファイルが期限切れになる前に少なくとも 1 回は通知が送信されるようになります。この日付を指定しない場合、通知が送信される前にファイルが期限切れになる可能性があります。たとえば、ジョブを作成して同じ日に実行すると、1 つ以上のファイルがジョブで設定された期限切れ条件を満たし、通知なしで期限切れになる可能性があります。0 日の通知を作成することもできますが、その通知は事後の通知となります。

vtbl 40 HRESULT put_FromDate(DOUBLE fromDate)

ファイル管理ジョブがファイルの期限切れ処理 (期限切れファイル ディレクトリへのファイルの移動) を開始する日付です。このプロパティは、ファイル管理ジョブのカスタム コマンドにも適用されます。(Put)

fromDateDOUBLEinジョブの対象期間の起点となる日時を表す DOUBLE 値 (DATE 形式) を指定する。

解説(Remarks)

設定されていない場合、値は FsrmDateNotSpecified です。

fromDate の値がジョブの現在の実行日より前である場合、ジョブはファイルを期限切れにします。

通常、この日付は、指定した通知期間のうち最も短いものより大きい値に設定します。これにより、ファイルが期限切れになる前に少なくとも 1 回は通知が送信されるようになります。この日付を指定しない場合、通知が送信される前にファイルが期限切れになる可能性があります。たとえば、ジョブを作成して同じ日に実行すると、1 つ以上のファイルがジョブで設定された期限切れ条件を満たし、通知なしで期限切れになる可能性があります。0 日の通知を作成することもできますが、その通知は事後の通知となります。

vtbl 41 HRESULT get_Task(LPWSTR* taskName)

ジョブに関連付けるスケジュール済みタスクの名前です。(Get)

taskNameLPWSTR*outジョブに関連付けられたスケジュールタスクの名前を受け取る文字列ポインタである。

解説(Remarks)

通常、この名前は、ジョブを実行するスケジュール済みタスクを作成するために IFsrmReportScheduler::CreateScheduleTask メソッドを呼び出す際に指定する名前と同じです。

スケジュール済みジョブに指定するコマンドは C:\Windows\System32\Storrept.exe です。 Storrept.exe に指定する引数は "FileMgmt Run /Scheduled /Task:taskname" であり、 taskname はこのプロパティの値です。

vtbl 42 HRESULT put_Task(LPWSTR taskName)

ジョブに関連付けるスケジュール済みタスクの名前です。(Put)

taskNameLPWSTRinジョブに関連付けるスケジュールタスクの名前を指定する文字列である。

解説(Remarks)

通常、この名前は、ジョブを実行するスケジュール済みタスクを作成するために IFsrmReportScheduler::CreateScheduleTask メソッドを呼び出す際に指定する名前と同じです。

スケジュール済みジョブに指定するコマンドは C:\Windows\System32\Storrept.exe です。 Storrept.exe に指定する引数は "FileMgmt Run /Scheduled /Task:taskname" であり、 taskname はこのプロパティの値です。

vtbl 43 HRESULT get_Parameters(SAFEARRAY** parameters)

ファイル管理ジョブのパラメーターです。(Get)

parametersSAFEARRAY**outジョブに渡されるパラメータ (名前=値 の文字列) の一覧を格納した SAFEARRAY を受け取るポインタである。

解説(Remarks)

パラメーター名や値の長さに制限はなく、指定できるパラメーターの数にも制限はありません。値を指定せずにパラメーターを指定することも有効です (たとえば "parameter=")。

vtbl 44 HRESULT put_Parameters(SAFEARRAY* parameters)

ファイル管理ジョブのパラメーターです。(Put)

parametersSAFEARRAY*inジョブに設定するパラメータ (名前=値 の文字列) の一覧を格納した SAFEARRAY を指定する。

解説(Remarks)

パラメーター名や値の長さに制限はなく、指定できるパラメーターの数にも制限はありません。値を指定せずにパラメーターを指定することも有効です (たとえば "parameter=")。

vtbl 45 HRESULT get_RunningStatus(FsrmReportRunningStatus* runningStatus)

ジョブの実行状態です。

runningStatusFsrmReportRunningStatus*outジョブの現在の実行状態を示す FsrmReportRunningStatus 列挙値を受け取るポインタである。
vtbl 46 HRESULT get_LastError(LPWSTR* lastError)

ジョブが最後に実行されたときのエラー メッセージです。

lastErrorLPWSTR*outジョブの最後の実行で発生したエラーメッセージを受け取る文字列ポインタである。
vtbl 47 HRESULT get_LastReportPathWithoutExtension(LPWSTR* path)

ジョブが最後に実行されたときにレポートが格納されたローカル ディレクトリ パスです。

pathLPWSTR*out最後に生成されたレポートの拡張子を除いたパスを受け取る文字列ポインタである。

解説(Remarks)

ジョブが失敗した場合、これはレポートが格納されるはずだったパスです。このディレクトリには、失敗が発生する前に正常に完了したレポートが含まれている場合があります。

vtbl 48 HRESULT get_LastRun(DOUBLE* lastRun)

ファイル管理ジョブが最後に実行された日時です。

lastRunDOUBLE*outジョブが最後に実行された日時を表す DOUBLE 値 (DATE 形式) を受け取るポインタである。
vtbl 49 HRESULT get_FileNamePattern(LPWSTR* fileNamePattern)

条件プロパティ: 名前に対するワイルドカード フィルターです。(Get)

fileNamePatternLPWSTR*outジョブの処理対象を絞り込むファイル名のパターンを受け取る文字列ポインタである。

解説(Remarks)

ファイル名パターンは、ファイル名の集合を定義する文字列式です。この式には次のワイルドカード文字を含めることができます: "" と "?"。"" ワイルドカードは 0 個以上の文字に一致し、"?" ワイルドカードはちょうど 1 文字に一致します。たとえば、ファイル名 "example.cpp" はパターン "e*.cpp" に一致しますが、"e?.cpp" には一致しません。ファイル名 "ex.cpp" は両方のパターンに一致します。ファイル名パターンを特定のファイル名との比較に使用する場合、パターン一致は大文字と小文字を区別しないことに注意してください。

vtbl 50 HRESULT put_FileNamePattern(LPWSTR fileNamePattern)

条件プロパティ: 名前に対するワイルドカード フィルターです。(Put)

fileNamePatternLPWSTRinジョブの処理対象を絞り込むファイル名のパターンを指定する文字列である。

解説(Remarks)

ファイル名パターンは、ファイル名の集合を定義する文字列式です。この式には次のワイルドカード文字を含めることができます: "" と "?"。"" ワイルドカードは 0 個以上の文字に一致し、"?" ワイルドカードはちょうど 1 文字に一致します。たとえば、ファイル名 "example.cpp" はパターン "e*.cpp" に一致しますが、"e?.cpp" には一致しません。ファイル名 "ex.cpp" は両方のパターンに一致します。ファイル名パターンを特定のファイル名との比較に使用する場合、パターン一致は大文字と小文字を区別しないことに注意してください。

vtbl 51 HRESULT Run(FsrmReportGenerationContext context)

ジョブを実行します。

contextFsrmReportGenerationContextinレポートまたはログ記録が有効な場合に、それらをどのサブディレクトリに書き込むかを指定します。指定可能な値については、 FsrmReportGenerationContext 列挙型を参照してください。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

ファイル管理ジョブは分類の結果を利用するため、ファイル管理ジョブを実行すると分類も実行されます。

ジョブは非同期に実行されます。スケジュール済みコンテキストで実行されるジョブは、実行されるまで 5 分間キューに残ります。その他のコンテキストで実行されるジョブは 30 秒間キューに残ります。ジョブが完了するまでコードをブロックするには、 IFsrmFileManagementJob::WaitForCompletion メソッドを呼び出します。WaitForCompletion を呼び出すと、ジョブはキューから削除され、直ちに実行されます。

このメソッドを呼び出したときにジョブが既にキューに入っているか実行中である場合、このメソッドはエラーを返します。ジョブの状態を確認するには、 IFsrmReportJob::RunningStatus プロパティにアクセスします。

vtbl 52 HRESULT WaitForCompletion(INT waitSeconds, VARIANT_BOOL* completed)

指定された時間、またはジョブの実行が完了するまで待機します。

waitSecondsINTinジョブの完了を待機する秒数です。この期間が経過するか、ジョブが完了すると、このメソッドは制御を返します。無期限に待機するには、値を –1 に設定します。
completedVARIANT_BOOL*outジョブが完了した場合は VARIANT_TRUE、それ以外の場合は VARIANT_FALSE です。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

ジョブを実行するには、 IFsrmFileManagementJob::Run メソッドを呼び出します。ジョブは非同期に実行されるため、このメソッドを呼び出すと、ジョブが完了するかタイムアウト期間が経過するまでスレッドがブロックされます。

WaitForCompletion が制御を返した後、 IFsrmFileManagementJob::LastError プロパティにアクセスして、レポートが正常に完了したかどうかを確認します。

vtbl 53 HRESULT Cancel()

ジョブが実行中の場合、そのジョブをキャンセルします。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

ジョブの RunningStatus プロパティの値が FsrmReportRunningStatus_Queued または FsrmReportRunningStatus_Running の場合、ジョブをキャンセルします。

vtbl 54 HRESULT AddNotification(INT days)

ファイル管理ジョブの通知の一覧に新しい通知値 (期間) を追加します。

daysINTin追加する一意の通知値です。値は 0 未満にできません。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

days パラメーターは、ファイルが期限切れになるまでの日数を指定します。ジョブに設定された該当の条件が満たされると、ファイルがまもなく期限切れになることを知らせる通知がユーザーに送信されます。FSRM は、通知値に関連付けられたアクションを使用して、ユーザーへの通知方法を決定します。

通知は、ジョブが実行され、次の条件が満たされたときに行われます。

ユーザーが重複した通知を受け取る可能性があることに注意してください。たとえば、通知が送信された後、通知を行うべき日以前にジョブを手動で実行した場合、ユーザーは重複した通知を受け取ることがあります。

FromDate は通知ウィンドウの開始時期を決定します。次のプロパティは、ファイルがいつ期限切れになるかを決定します。

通知値にアクションを関連付けるには、 IFsrmFileManagementJob::CreateNotificationAction メソッドを呼び出します。
vtbl 55 HRESULT DeleteNotification(INT days)

ファイル管理ジョブの通知の一覧から通知値を削除します。

daysINTin削除する通知値です。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

通知を削除すると、それに関連付けられたアクションも削除されます。

vtbl 56 HRESULT ModifyNotification(INT days, INT newDays)

ファイル管理ジョブの通知の一覧にある通知値を変更します。

daysINTin変更する通知値です。
newDaysINTin新しい通知値です。値は一意である必要があり、0 未満にはできません。

戻り値

このメソッドは次の戻り値を返します。

vtbl 57 HRESULT CreateNotificationAction(INT days, FsrmActionType actionType, IFsrmAction** action)

通知アクションを作成し、通知値に関連付けます。

daysINTinアクションに関連付ける通知値です。
actionTypeFsrmActionTypein

通知期間に達したときに実行するアクションで、 FsrmActionType 列挙型で列挙されます。

メモ FsrmActionType_Report 型はこのメソッドでは無効です。

FsrmActionType_EventLog (1)

アプリケーション イベント ログにイベントを記録します。

FsrmActionType_Email (2)

電子メール メッセージを送信します。

FsrmActionType_Command (3)

コマンドまたはスクリプトを実行します。

actionIFsrmAction**out新しく作成されたアクションの IFsrmAction インターフェイスです。 actionType パラメーターで指定したアクション インターフェイスをこのインターフェイスに対してクエリしてください。たとえば、アクションの種類が FsrmActionType_Command の場合は、 IFsrmActionCommand インターフェイスをクエリします。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

各通知値に対して、最大 3 つの一意のアクションを指定できます。

通知が削除されると、アクションも削除されます。

vtbl 58 HRESULT EnumNotificationActions(INT days, IFsrmCollection** actions)

通知値に関連付けられたアクションを列挙します。

daysINTin列挙したいアクションを含む通知値です。
actionsIFsrmCollection**outアクションのコレクションを含む IFsrmCollection インターフェイスです。コレクション内の各項目の VARIANT 型は VT_DISPATCH です。IFsrmAction インターフェイスを取得するには、VARIANT の pdispVal メンバーをクエリします。IFsrmAction::ActionType プロパティを使用して、クエリすべき実際のアクション インターフェイスを判別できます。

戻り値

このメソッドは次の戻り値を返します。

vtbl 59 HRESULT CreatePropertyCondition(LPWSTR name, IFsrmPropertyCondition** propertyCondition)

新しいプロパティ条件を作成し、プロパティ条件のコレクションに追加します。

nameLPWSTRin条件が適用されるプロパティ定義の名前です。定義済みのプロパティ定義を列挙するには、 IFsrmClassificationManager::EnumPropertyDefinitions メソッドを呼び出します。
propertyConditionIFsrmPropertyCondition**out新しく作成されたプロパティ条件を定義するために使用する IFsrmPropertyCondition インターフェイスです。

戻り値

このメソッドは次の戻り値を返します。

解説(Remarks)

ジョブに関連付けられたプロパティ条件のコレクションを列挙するには、 PropertyConditions プロパティにアクセスします。

vtbl 60 HRESULT CreateCustomAction(IFsrmActionCommand** customAction)

カスタム アクション オブジェクトを作成します。

customActionIFsrmActionCommand**outジョブのプロパティ条件が満たされた場合に実行するカスタム アクションを指定するために使用できる IFsrmActionCommand インターフェイスです。

戻り値

このメソッドは次の戻り値を返します。実装者は、その他のエラーに対しては HRESULT エラー コードを返す必要があります。

解説(Remarks)

カスタム アクションを取得するには、 CustomAction プロパティにアクセスします。

カスタム アクションは、ジョブの OperationTypeFsrmFileManagementType_Custom に設定されている場合にのみ作成してください。

サポートされるマクロの一覧については、 IFsrmFileManagementJobManager::ActionVariables プロパティおよび IFsrmFileManagementJobManager::ActionVariableDescriptions プロパティに対して "get" 操作を実行してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IFsrmFileManagementJob "{0770687E-9F36-4D6F-8778-599D188461C9}"
#usecom global IFsrmFileManagementJob IID_IFsrmFileManagementJob "{}"
#comfunc global IFsrmFileManagementJob_get_Name                            12 var
#comfunc global IFsrmFileManagementJob_put_Name                            13 wstr
#comfunc global IFsrmFileManagementJob_get_NamespaceRoots                  14 var
#comfunc global IFsrmFileManagementJob_put_NamespaceRoots                  15 var
#comfunc global IFsrmFileManagementJob_get_Enabled                         16 var
#comfunc global IFsrmFileManagementJob_put_Enabled                         17 int
#comfunc global IFsrmFileManagementJob_get_OperationType                   18 var
#comfunc global IFsrmFileManagementJob_put_OperationType                   19 int
#comfunc global IFsrmFileManagementJob_get_ExpirationDirectory             20 var
#comfunc global IFsrmFileManagementJob_put_ExpirationDirectory             21 wstr
#comfunc global IFsrmFileManagementJob_get_CustomAction                    22 sptr
#comfunc global IFsrmFileManagementJob_get_Notifications                   23 var
#comfunc global IFsrmFileManagementJob_get_Logging                         24 var
#comfunc global IFsrmFileManagementJob_put_Logging                         25 int
#comfunc global IFsrmFileManagementJob_get_ReportEnabled                   26 var
#comfunc global IFsrmFileManagementJob_put_ReportEnabled                   27 int
#comfunc global IFsrmFileManagementJob_get_Formats                         28 var
#comfunc global IFsrmFileManagementJob_put_Formats                         29 var
#comfunc global IFsrmFileManagementJob_get_MailTo                          30 var
#comfunc global IFsrmFileManagementJob_put_MailTo                          31 wstr
#comfunc global IFsrmFileManagementJob_get_DaysSinceFileCreated            32 var
#comfunc global IFsrmFileManagementJob_put_DaysSinceFileCreated            33 int
#comfunc global IFsrmFileManagementJob_get_DaysSinceFileLastAccessed       34 var
#comfunc global IFsrmFileManagementJob_put_DaysSinceFileLastAccessed       35 int
#comfunc global IFsrmFileManagementJob_get_DaysSinceFileLastModified       36 var
#comfunc global IFsrmFileManagementJob_put_DaysSinceFileLastModified       37 int
#comfunc global IFsrmFileManagementJob_get_PropertyConditions              38 sptr
#comfunc global IFsrmFileManagementJob_get_FromDate                        39 var
#comfunc global IFsrmFileManagementJob_put_FromDate                        40 double
#comfunc global IFsrmFileManagementJob_get_Task                            41 var
#comfunc global IFsrmFileManagementJob_put_Task                            42 wstr
#comfunc global IFsrmFileManagementJob_get_Parameters                      43 var
#comfunc global IFsrmFileManagementJob_put_Parameters                      44 var
#comfunc global IFsrmFileManagementJob_get_RunningStatus                   45 var
#comfunc global IFsrmFileManagementJob_get_LastError                       46 var
#comfunc global IFsrmFileManagementJob_get_LastReportPathWithoutExtension  47 var
#comfunc global IFsrmFileManagementJob_get_LastRun                         48 var
#comfunc global IFsrmFileManagementJob_get_FileNamePattern                 49 var
#comfunc global IFsrmFileManagementJob_put_FileNamePattern                 50 wstr
#comfunc global IFsrmFileManagementJob_Run                                 51 int
#comfunc global IFsrmFileManagementJob_WaitForCompletion                   52 int,var
#comfunc global IFsrmFileManagementJob_Cancel                              53
#comfunc global IFsrmFileManagementJob_AddNotification                     54 int
#comfunc global IFsrmFileManagementJob_DeleteNotification                  55 int
#comfunc global IFsrmFileManagementJob_ModifyNotification                  56 int,int
#comfunc global IFsrmFileManagementJob_CreateNotificationAction            57 int,int,sptr
#comfunc global IFsrmFileManagementJob_EnumNotificationActions             58 int,sptr
#comfunc global IFsrmFileManagementJob_CreatePropertyCondition             59 wstr,sptr
#comfunc global IFsrmFileManagementJob_CreateCustomAction                  60 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。