ホーム › Storage.Vss › IVssComponent
IVssComponent
COMメソッド 38
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| pbstrPath | LPWSTR* | inout | コンポーネントの論理パスを受け取る文字列ポインタへのポインタである。 |
vtbl 4 HRESULT GetComponentType(VSS_COMPONENT_TYPE* pct)
| pct | VSS_COMPONENT_TYPE* | inout | コンポーネントの種別(データベースまたはファイルグループ)を示す列挙値を受け取るポインタである。 |
| pbstrName | LPWSTR* | inout | コンポーネントの名前を受け取る文字列ポインタへのポインタである。 |
| pbSucceeded | BOOLEAN* | inout | このコンポーネントのバックアップが成功したかどうかを示すブール値を受け取るポインタである。 |
| pcMappings | DWORD* | inout | このコンポーネントに関連付けられた代替場所マッピングの数を受け取るポインタである。 |
vtbl 8 HRESULT GetAlternateLocationMapping(DWORD iMapping, IVssWMFiledesc** ppFiledesc)
| iMapping | DWORD | in | 取得する代替場所マッピングの 0 から始まるインデックスを指定する。 |
| ppFiledesc | IVssWMFiledesc** | out | 指定したマッピングのファイル記述子を表す IVssWMFiledesc インターフェイスポインタを受け取るポインタへのポインタである。 |
| wszData | LPWSTR | in | ライターがバックアップ時に保存する任意のメタデータ文字列を指定する。 |
| pbstrData | LPWSTR* | inout | バックアップ時に保存されたメタデータ文字列を受け取る文字列ポインタへのポインタである。 |
vtbl 11 HRESULT AddPartialFile(LPWSTR wszPath, LPWSTR wszFilename, LPWSTR wszRanges, LPWSTR wszMetadata)
| wszPath | LPWSTR | in | 部分ファイルが存在するパスを指定する。 |
| wszFilename | LPWSTR | in | 部分ファイルのファイル名を指定する。 |
| wszRanges | LPWSTR | in | バックアップ対象とするファイル内のバイト範囲のリストを指定する。 |
| wszMetadata | LPWSTR | in | 部分ファイルに付随する任意のメタデータ文字列を指定する。 |
| pcPartialFiles | DWORD* | inout | このコンポーネントに関連付けられた部分ファイルの数を受け取るポインタである。 |
vtbl 13 HRESULT GetPartialFile(DWORD iPartialFile, LPWSTR* pbstrPath, LPWSTR* pbstrFilename, LPWSTR* pbstrRange, LPWSTR* pbstrMetadata)
| iPartialFile | DWORD | in | 取得する部分ファイルの 0 から始まるインデックスを指定する。 |
| pbstrPath | LPWSTR* | inout | 部分ファイルのパスを受け取る文字列ポインタへのポインタである。 |
| pbstrFilename | LPWSTR* | inout | 部分ファイルのファイル名を受け取る文字列ポインタへのポインタである。 |
| pbstrRange | LPWSTR* | inout | 部分ファイルのバイト範囲リストを受け取る文字列ポインタへのポインタである。 |
| pbstrMetadata | LPWSTR* | inout | 部分ファイルのメタデータ文字列を受け取る文字列ポインタへのポインタである。 |
| pbSelectedForRestore | BOOLEAN* | inout | このコンポーネントが復元対象として選択されているかどうかを示すブール値を受け取るポインタである。 |
| pbAdditionalRestores | BOOLEAN* | inout | このコンポーネントに対して追加の復元が予定されているかどうかを示すブール値を受け取るポインタである。 |
| pcNewTarget | DWORD* | inout | このコンポーネントに設定された新しい復元先(新ターゲット)の数を受け取るポインタである。 |
vtbl 17 HRESULT GetNewTarget(DWORD iNewTarget, IVssWMFiledesc** ppFiledesc)
| iNewTarget | DWORD | in | 取得する新ターゲットの 0 から始まるインデックスを指定する。 |
| ppFiledesc | IVssWMFiledesc** | out | 指定した新ターゲットのファイル記述子を表す IVssWMFiledesc インターフェイスポインタを受け取るポインタへのポインタである。 |
vtbl 18 HRESULT AddDirectedTarget(LPWSTR wszSourcePath, LPWSTR wszSourceFilename, LPWSTR wszSourceRangeList, LPWSTR wszDestinationPath, LPWSTR wszDestinationFilename, LPWSTR wszDestinationRangeList)
| wszSourcePath | LPWSTR | in | バックアップ元ファイルのパスを指定する。 |
| wszSourceFilename | LPWSTR | in | バックアップ元ファイルのファイル名を指定する。 |
| wszSourceRangeList | LPWSTR | in | 元ファイル内のバイト範囲のリストを指定する。 |
| wszDestinationPath | LPWSTR | in | 復元先ファイルのパスを指定する。 |
| wszDestinationFilename | LPWSTR | in | 復元先ファイルのファイル名を指定する。 |
| wszDestinationRangeList | LPWSTR | in | 復元先ファイル内のバイト範囲のリストを指定する。 |
| pcDirectedTarget | DWORD* | inout | このコンポーネントに設定された指示付きターゲットの数を受け取るポインタである。 |
vtbl 20 HRESULT GetDirectedTarget(DWORD iDirectedTarget, LPWSTR* pbstrSourcePath, LPWSTR* pbstrSourceFileName, LPWSTR* pbstrSourceRangeList, LPWSTR* pbstrDestinationPath, LPWSTR* pbstrDestinationFilename, LPWSTR* pbstrDestinationRangeList)
| iDirectedTarget | DWORD | in | 取得する指示付きターゲットの 0 から始まるインデックスを指定する。 |
| pbstrSourcePath | LPWSTR* | inout | バックアップ元ファイルのパスを受け取る文字列ポインタへのポインタである。 |
| pbstrSourceFileName | LPWSTR* | inout | バックアップ元ファイルのファイル名を受け取る文字列ポインタへのポインタである。 |
| pbstrSourceRangeList | LPWSTR* | inout | 元ファイル内のバイト範囲リストを受け取る文字列ポインタへのポインタである。 |
| pbstrDestinationPath | LPWSTR* | inout | 復元先ファイルのパスを受け取る文字列ポインタへのポインタである。 |
| pbstrDestinationFilename | LPWSTR* | inout | 復元先ファイルのファイル名を受け取る文字列ポインタへのポインタである。 |
| pbstrDestinationRangeList | LPWSTR* | inout | 復元先ファイル内のバイト範囲リストを受け取る文字列ポインタへのポインタである。 |
| wszRestoreMetadata | LPWSTR | in | 復元処理時にライターが使用する任意のメタデータ文字列を指定する。 |
| pbstrRestoreMetadata | LPWSTR* | inout | 復元処理用に保存されたメタデータ文字列を受け取る文字列ポインタへのポインタである。 |
vtbl 23 HRESULT SetRestoreTarget(VSS_RESTORE_TARGET target)
| target | VSS_RESTORE_TARGET | in | コンポーネントの復元先の種類を示す VSS_RESTORE_TARGET 列挙値を指定する。 |
vtbl 24 HRESULT GetRestoreTarget(VSS_RESTORE_TARGET* pTarget)
| pTarget | VSS_RESTORE_TARGET* | inout | コンポーネントの復元先の種類を示す VSS_RESTORE_TARGET 列挙値を受け取るポインタである。 |
| wszPreRestoreFailureMsg | LPWSTR | in | 復元前イベントで発生した障害を説明するメッセージ文字列を指定する。 |
| pbstrPreRestoreFailureMsg | LPWSTR* | inout | 復元前障害メッセージ文字列を受け取る文字列ポインタへのポインタである。 |
| wszPostRestoreFailureMsg | LPWSTR | in | 復元後イベントで発生した障害を説明するメッセージ文字列を指定する。 |
| pbstrPostRestoreFailureMsg | LPWSTR* | inout | 復元後障害メッセージ文字列を受け取る文字列ポインタへのポインタである。 |
| wszBackupStamp | LPWSTR | in | このバックアップを識別するためのバックアップスタンプ文字列を指定する。 |
| pbstrBackupStamp | LPWSTR* | inout | 現在のバックアップを識別するバックアップスタンプ文字列を受け取る文字列ポインタへのポインタである。 |
| pbstrBackupStamp | LPWSTR* | inout | 前回(基準となる差分/増分)バックアップを識別するバックアップスタンプ文字列を受け取る文字列ポインタへのポインタである。 |
| pbstrBackupOptions | LPWSTR* | inout | リクエスター(バックアップアプリケーション)がライターに渡したバックアップオプション文字列を受け取る文字列ポインタへのポインタである。 |
| pbstrRestoreOptions | LPWSTR* | inout | リクエスターがライターに渡した復元オプション文字列を受け取る文字列ポインタへのポインタである。 |
| pcRestoreSubcomponent | DWORD* | inout | 復元対象として明示的に指定されたサブコンポーネントの数を受け取るポインタである。 |
vtbl 35 HRESULT GetRestoreSubcomponent(DWORD iComponent, LPWSTR* pbstrLogicalPath, LPWSTR* pbstrComponentName, BOOLEAN* pbRepair)
| iComponent | DWORD | in | 取得する復元サブコンポーネントの 0 から始まるインデックスを指定する。 |
| pbstrLogicalPath | LPWSTR* | inout | サブコンポーネントの論理パスを受け取る文字列ポインタへのポインタである。 |
| pbstrComponentName | LPWSTR* | inout | サブコンポーネントの名前を受け取る文字列ポインタへのポインタである。 |
| pbRepair | BOOLEAN* | inout | 予約済みのブール値を受け取るポインタである。 |
vtbl 36 HRESULT GetFileRestoreStatus(VSS_FILE_RESTORE_STATUS* pStatus)
| pStatus | VSS_FILE_RESTORE_STATUS* | inout | コンポーネント内ファイルの復元状況を示す VSS_FILE_RESTORE_STATUS 列挙値を受け取るポインタである。 |
vtbl 37 HRESULT AddDifferencedFilesByLastModifyTime(LPWSTR wszPath, LPWSTR wszFilespec, BOOL bRecursive, FILETIME ftLastModifyTime)
| wszPath | LPWSTR | in | 差分対象ファイルが存在するパスを指定する。 |
| wszFilespec | LPWSTR | in | 差分対象とするファイル名のパターンを指定する。 |
| bRecursive | BOOL | in | 指定パス配下を再帰的に対象とするかどうかを指定する。 |
| ftLastModifyTime | FILETIME | in | この時刻より後に更新されたファイルを差分対象とする基準の最終更新日時を指定する。 |
vtbl 38 HRESULT AddDifferencedFilesByLastModifyLSN(LPWSTR wszPath, LPWSTR wszFilespec, BOOL bRecursive, LPWSTR bstrLsnString)
| wszPath | LPWSTR | in | 差分対象ファイルが存在するパスを指定する。 |
| wszFilespec | LPWSTR | in | 差分対象とするファイル名のパターンを指定する。 |
| bRecursive | BOOL | in | 指定パス配下を再帰的に対象とするかどうかを指定する。 |
| bstrLsnString | LPWSTR | in | 差分の基準となる論理シーケンス番号(LSN)を表す文字列を指定する。 |
| pcDifferencedFiles | DWORD* | inout | このコンポーネントに関連付けられた差分ファイルセットの数を受け取るポインタである。 |
vtbl 40 HRESULT GetDifferencedFile(DWORD iDifferencedFile, LPWSTR* pbstrPath, LPWSTR* pbstrFilespec, BOOL* pbRecursive, LPWSTR* pbstrLsnString, FILETIME* pftLastModifyTime)
| iDifferencedFile | DWORD | in | 取得する差分ファイルセットの 0 から始まるインデックスを指定する。 |
| pbstrPath | LPWSTR* | inout | 差分ファイルのパスを受け取る文字列ポインタへのポインタである。 |
| pbstrFilespec | LPWSTR* | inout | 差分ファイルのファイル名パターンを受け取る文字列ポインタへのポインタである。 |
| pbRecursive | BOOL* | inout | 再帰的に対象とするかどうかを示すブール値を受け取るポインタである。 |
| pbstrLsnString | LPWSTR* | inout | 差分の基準となる LSN 文字列を受け取る文字列ポインタへのポインタである。 |
| pftLastModifyTime | FILETIME* | inout | 差分の基準となる最終更新日時を受け取るポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IVssComponent "{D2C72C96-C121-4518-B627-E5A93D010EAD}" #usecom global IVssComponent IID_IVssComponent "{}" #comfunc global IVssComponent_GetLogicalPath 3 var #comfunc global IVssComponent_GetComponentType 4 var #comfunc global IVssComponent_GetComponentName 5 var #comfunc global IVssComponent_GetBackupSucceeded 6 var #comfunc global IVssComponent_GetAlternateLocationMappingCount 7 var #comfunc global IVssComponent_GetAlternateLocationMapping 8 int,sptr #comfunc global IVssComponent_SetBackupMetadata 9 wstr #comfunc global IVssComponent_GetBackupMetadata 10 var #comfunc global IVssComponent_AddPartialFile 11 wstr,wstr,wstr,wstr #comfunc global IVssComponent_GetPartialFileCount 12 var #comfunc global IVssComponent_GetPartialFile 13 int,var,var,var,var #comfunc global IVssComponent_IsSelectedForRestore 14 var #comfunc global IVssComponent_GetAdditionalRestores 15 var #comfunc global IVssComponent_GetNewTargetCount 16 var #comfunc global IVssComponent_GetNewTarget 17 int,sptr #comfunc global IVssComponent_AddDirectedTarget 18 wstr,wstr,wstr,wstr,wstr,wstr #comfunc global IVssComponent_GetDirectedTargetCount 19 var #comfunc global IVssComponent_GetDirectedTarget 20 int,var,var,var,var,var,var #comfunc global IVssComponent_SetRestoreMetadata 21 wstr #comfunc global IVssComponent_GetRestoreMetadata 22 var #comfunc global IVssComponent_SetRestoreTarget 23 int #comfunc global IVssComponent_GetRestoreTarget 24 var #comfunc global IVssComponent_SetPreRestoreFailureMsg 25 wstr #comfunc global IVssComponent_GetPreRestoreFailureMsg 26 var #comfunc global IVssComponent_SetPostRestoreFailureMsg 27 wstr #comfunc global IVssComponent_GetPostRestoreFailureMsg 28 var #comfunc global IVssComponent_SetBackupStamp 29 wstr #comfunc global IVssComponent_GetBackupStamp 30 var #comfunc global IVssComponent_GetPreviousBackupStamp 31 var #comfunc global IVssComponent_GetBackupOptions 32 var #comfunc global IVssComponent_GetRestoreOptions 33 var #comfunc global IVssComponent_GetRestoreSubcomponentCount 34 var #comfunc global IVssComponent_GetRestoreSubcomponent 35 int,var,var,var #comfunc global IVssComponent_GetFileRestoreStatus 36 var #comfunc global IVssComponent_AddDifferencedFilesByLastModifyTime 37 wstr,wstr,int,int #comfunc global IVssComponent_AddDifferencedFilesByLastModifyLSN 38 wstr,wstr,int,wstr #comfunc global IVssComponent_GetDifferencedFilesCount 39 var #comfunc global IVssComponent_GetDifferencedFile 40 int,var,var,var,var,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IVssComponent "{D2C72C96-C121-4518-B627-E5A93D010EAD}" #usecom global IVssComponent IID_IVssComponent "{}" #comfunc global IVssComponent_GetLogicalPath 3 sptr #comfunc global IVssComponent_GetComponentType 4 sptr #comfunc global IVssComponent_GetComponentName 5 sptr #comfunc global IVssComponent_GetBackupSucceeded 6 sptr #comfunc global IVssComponent_GetAlternateLocationMappingCount 7 sptr #comfunc global IVssComponent_GetAlternateLocationMapping 8 int,sptr #comfunc global IVssComponent_SetBackupMetadata 9 wstr #comfunc global IVssComponent_GetBackupMetadata 10 sptr #comfunc global IVssComponent_AddPartialFile 11 wstr,wstr,wstr,wstr #comfunc global IVssComponent_GetPartialFileCount 12 sptr #comfunc global IVssComponent_GetPartialFile 13 int,sptr,sptr,sptr,sptr #comfunc global IVssComponent_IsSelectedForRestore 14 sptr #comfunc global IVssComponent_GetAdditionalRestores 15 sptr #comfunc global IVssComponent_GetNewTargetCount 16 sptr #comfunc global IVssComponent_GetNewTarget 17 int,sptr #comfunc global IVssComponent_AddDirectedTarget 18 wstr,wstr,wstr,wstr,wstr,wstr #comfunc global IVssComponent_GetDirectedTargetCount 19 sptr #comfunc global IVssComponent_GetDirectedTarget 20 int,sptr,sptr,sptr,sptr,sptr,sptr #comfunc global IVssComponent_SetRestoreMetadata 21 wstr #comfunc global IVssComponent_GetRestoreMetadata 22 sptr #comfunc global IVssComponent_SetRestoreTarget 23 int #comfunc global IVssComponent_GetRestoreTarget 24 sptr #comfunc global IVssComponent_SetPreRestoreFailureMsg 25 wstr #comfunc global IVssComponent_GetPreRestoreFailureMsg 26 sptr #comfunc global IVssComponent_SetPostRestoreFailureMsg 27 wstr #comfunc global IVssComponent_GetPostRestoreFailureMsg 28 sptr #comfunc global IVssComponent_SetBackupStamp 29 wstr #comfunc global IVssComponent_GetBackupStamp 30 sptr #comfunc global IVssComponent_GetPreviousBackupStamp 31 sptr #comfunc global IVssComponent_GetBackupOptions 32 sptr #comfunc global IVssComponent_GetRestoreOptions 33 sptr #comfunc global IVssComponent_GetRestoreSubcomponentCount 34 sptr #comfunc global IVssComponent_GetRestoreSubcomponent 35 int,sptr,sptr,sptr #comfunc global IVssComponent_GetFileRestoreStatus 36 sptr #comfunc global IVssComponent_AddDifferencedFilesByLastModifyTime 37 wstr,wstr,int,int #comfunc global IVssComponent_AddDifferencedFilesByLastModifyLSN 38 wstr,wstr,int,wstr #comfunc global IVssComponent_GetDifferencedFilesCount 39 sptr #comfunc global IVssComponent_GetDifferencedFile 40 int,sptr,sptr,sptr,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。