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

IVssComponent

COM
IIDd2c72c96-c121-4518-b627-e5a93d010ead継承元IUnknown自前メソッド開始 vtbl3

メソッド 38

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetLogicalPath(LPWSTR* pbstrPath)
pbstrPathLPWSTR*inoutコンポーネントの論理パスを受け取る文字列ポインタへのポインタである。
vtbl 4 HRESULT GetComponentType(VSS_COMPONENT_TYPE* pct)
pctVSS_COMPONENT_TYPE*inoutコンポーネントの種別(データベースまたはファイルグループ)を示す列挙値を受け取るポインタである。
vtbl 5 HRESULT GetComponentName(LPWSTR* pbstrName)
pbstrNameLPWSTR*inoutコンポーネントの名前を受け取る文字列ポインタへのポインタである。
vtbl 6 HRESULT GetBackupSucceeded(BOOLEAN* pbSucceeded)
pbSucceededBOOLEAN*inoutこのコンポーネントのバックアップが成功したかどうかを示すブール値を受け取るポインタである。
vtbl 7 HRESULT GetAlternateLocationMappingCount(DWORD* pcMappings)
pcMappingsDWORD*inoutこのコンポーネントに関連付けられた代替場所マッピングの数を受け取るポインタである。
vtbl 8 HRESULT GetAlternateLocationMapping(DWORD iMapping, IVssWMFiledesc** ppFiledesc)
iMappingDWORDin取得する代替場所マッピングの 0 から始まるインデックスを指定する。
ppFiledescIVssWMFiledesc**out指定したマッピングのファイル記述子を表す IVssWMFiledesc インターフェイスポインタを受け取るポインタへのポインタである。
vtbl 9 HRESULT SetBackupMetadata(LPWSTR wszData)
wszDataLPWSTRinライターがバックアップ時に保存する任意のメタデータ文字列を指定する。
vtbl 10 HRESULT GetBackupMetadata(LPWSTR* pbstrData)
pbstrDataLPWSTR*inoutバックアップ時に保存されたメタデータ文字列を受け取る文字列ポインタへのポインタである。
vtbl 11 HRESULT AddPartialFile(LPWSTR wszPath, LPWSTR wszFilename, LPWSTR wszRanges, LPWSTR wszMetadata)
wszPathLPWSTRin部分ファイルが存在するパスを指定する。
wszFilenameLPWSTRin部分ファイルのファイル名を指定する。
wszRangesLPWSTRinバックアップ対象とするファイル内のバイト範囲のリストを指定する。
wszMetadataLPWSTRin部分ファイルに付随する任意のメタデータ文字列を指定する。
vtbl 12 HRESULT GetPartialFileCount(DWORD* pcPartialFiles)
pcPartialFilesDWORD*inoutこのコンポーネントに関連付けられた部分ファイルの数を受け取るポインタである。
vtbl 13 HRESULT GetPartialFile(DWORD iPartialFile, LPWSTR* pbstrPath, LPWSTR* pbstrFilename, LPWSTR* pbstrRange, LPWSTR* pbstrMetadata)
iPartialFileDWORDin取得する部分ファイルの 0 から始まるインデックスを指定する。
pbstrPathLPWSTR*inout部分ファイルのパスを受け取る文字列ポインタへのポインタである。
pbstrFilenameLPWSTR*inout部分ファイルのファイル名を受け取る文字列ポインタへのポインタである。
pbstrRangeLPWSTR*inout部分ファイルのバイト範囲リストを受け取る文字列ポインタへのポインタである。
pbstrMetadataLPWSTR*inout部分ファイルのメタデータ文字列を受け取る文字列ポインタへのポインタである。
vtbl 14 HRESULT IsSelectedForRestore(BOOLEAN* pbSelectedForRestore)
pbSelectedForRestoreBOOLEAN*inoutこのコンポーネントが復元対象として選択されているかどうかを示すブール値を受け取るポインタである。
vtbl 15 HRESULT GetAdditionalRestores(BOOLEAN* pbAdditionalRestores)
pbAdditionalRestoresBOOLEAN*inoutこのコンポーネントに対して追加の復元が予定されているかどうかを示すブール値を受け取るポインタである。
vtbl 16 HRESULT GetNewTargetCount(DWORD* pcNewTarget)
pcNewTargetDWORD*inoutこのコンポーネントに設定された新しい復元先(新ターゲット)の数を受け取るポインタである。
vtbl 17 HRESULT GetNewTarget(DWORD iNewTarget, IVssWMFiledesc** ppFiledesc)
iNewTargetDWORDin取得する新ターゲットの 0 から始まるインデックスを指定する。
ppFiledescIVssWMFiledesc**out指定した新ターゲットのファイル記述子を表す IVssWMFiledesc インターフェイスポインタを受け取るポインタへのポインタである。
vtbl 18 HRESULT AddDirectedTarget(LPWSTR wszSourcePath, LPWSTR wszSourceFilename, LPWSTR wszSourceRangeList, LPWSTR wszDestinationPath, LPWSTR wszDestinationFilename, LPWSTR wszDestinationRangeList)
wszSourcePathLPWSTRinバックアップ元ファイルのパスを指定する。
wszSourceFilenameLPWSTRinバックアップ元ファイルのファイル名を指定する。
wszSourceRangeListLPWSTRin元ファイル内のバイト範囲のリストを指定する。
wszDestinationPathLPWSTRin復元先ファイルのパスを指定する。
wszDestinationFilenameLPWSTRin復元先ファイルのファイル名を指定する。
wszDestinationRangeListLPWSTRin復元先ファイル内のバイト範囲のリストを指定する。
vtbl 19 HRESULT GetDirectedTargetCount(DWORD* pcDirectedTarget)
pcDirectedTargetDWORD*inoutこのコンポーネントに設定された指示付きターゲットの数を受け取るポインタである。
vtbl 20 HRESULT GetDirectedTarget(DWORD iDirectedTarget, LPWSTR* pbstrSourcePath, LPWSTR* pbstrSourceFileName, LPWSTR* pbstrSourceRangeList, LPWSTR* pbstrDestinationPath, LPWSTR* pbstrDestinationFilename, LPWSTR* pbstrDestinationRangeList)
iDirectedTargetDWORDin取得する指示付きターゲットの 0 から始まるインデックスを指定する。
pbstrSourcePathLPWSTR*inoutバックアップ元ファイルのパスを受け取る文字列ポインタへのポインタである。
pbstrSourceFileNameLPWSTR*inoutバックアップ元ファイルのファイル名を受け取る文字列ポインタへのポインタである。
pbstrSourceRangeListLPWSTR*inout元ファイル内のバイト範囲リストを受け取る文字列ポインタへのポインタである。
pbstrDestinationPathLPWSTR*inout復元先ファイルのパスを受け取る文字列ポインタへのポインタである。
pbstrDestinationFilenameLPWSTR*inout復元先ファイルのファイル名を受け取る文字列ポインタへのポインタである。
pbstrDestinationRangeListLPWSTR*inout復元先ファイル内のバイト範囲リストを受け取る文字列ポインタへのポインタである。
vtbl 21 HRESULT SetRestoreMetadata(LPWSTR wszRestoreMetadata)
wszRestoreMetadataLPWSTRin復元処理時にライターが使用する任意のメタデータ文字列を指定する。
vtbl 22 HRESULT GetRestoreMetadata(LPWSTR* pbstrRestoreMetadata)
pbstrRestoreMetadataLPWSTR*inout復元処理用に保存されたメタデータ文字列を受け取る文字列ポインタへのポインタである。
vtbl 23 HRESULT SetRestoreTarget(VSS_RESTORE_TARGET target)
targetVSS_RESTORE_TARGETinコンポーネントの復元先の種類を示す VSS_RESTORE_TARGET 列挙値を指定する。
vtbl 24 HRESULT GetRestoreTarget(VSS_RESTORE_TARGET* pTarget)
pTargetVSS_RESTORE_TARGET*inoutコンポーネントの復元先の種類を示す VSS_RESTORE_TARGET 列挙値を受け取るポインタである。
vtbl 25 HRESULT SetPreRestoreFailureMsg(LPWSTR wszPreRestoreFailureMsg)
wszPreRestoreFailureMsgLPWSTRin復元前イベントで発生した障害を説明するメッセージ文字列を指定する。
vtbl 26 HRESULT GetPreRestoreFailureMsg(LPWSTR* pbstrPreRestoreFailureMsg)
pbstrPreRestoreFailureMsgLPWSTR*inout復元前障害メッセージ文字列を受け取る文字列ポインタへのポインタである。
vtbl 27 HRESULT SetPostRestoreFailureMsg(LPWSTR wszPostRestoreFailureMsg)
wszPostRestoreFailureMsgLPWSTRin復元後イベントで発生した障害を説明するメッセージ文字列を指定する。
vtbl 28 HRESULT GetPostRestoreFailureMsg(LPWSTR* pbstrPostRestoreFailureMsg)
pbstrPostRestoreFailureMsgLPWSTR*inout復元後障害メッセージ文字列を受け取る文字列ポインタへのポインタである。
vtbl 29 HRESULT SetBackupStamp(LPWSTR wszBackupStamp)
wszBackupStampLPWSTRinこのバックアップを識別するためのバックアップスタンプ文字列を指定する。
vtbl 30 HRESULT GetBackupStamp(LPWSTR* pbstrBackupStamp)
pbstrBackupStampLPWSTR*inout現在のバックアップを識別するバックアップスタンプ文字列を受け取る文字列ポインタへのポインタである。
vtbl 31 HRESULT GetPreviousBackupStamp(LPWSTR* pbstrBackupStamp)
pbstrBackupStampLPWSTR*inout前回(基準となる差分/増分)バックアップを識別するバックアップスタンプ文字列を受け取る文字列ポインタへのポインタである。
vtbl 32 HRESULT GetBackupOptions(LPWSTR* pbstrBackupOptions)
pbstrBackupOptionsLPWSTR*inoutリクエスター(バックアップアプリケーション)がライターに渡したバックアップオプション文字列を受け取る文字列ポインタへのポインタである。
vtbl 33 HRESULT GetRestoreOptions(LPWSTR* pbstrRestoreOptions)
pbstrRestoreOptionsLPWSTR*inoutリクエスターがライターに渡した復元オプション文字列を受け取る文字列ポインタへのポインタである。
vtbl 34 HRESULT GetRestoreSubcomponentCount(DWORD* pcRestoreSubcomponent)
pcRestoreSubcomponentDWORD*inout復元対象として明示的に指定されたサブコンポーネントの数を受け取るポインタである。
vtbl 35 HRESULT GetRestoreSubcomponent(DWORD iComponent, LPWSTR* pbstrLogicalPath, LPWSTR* pbstrComponentName, BOOLEAN* pbRepair)
iComponentDWORDin取得する復元サブコンポーネントの 0 から始まるインデックスを指定する。
pbstrLogicalPathLPWSTR*inoutサブコンポーネントの論理パスを受け取る文字列ポインタへのポインタである。
pbstrComponentNameLPWSTR*inoutサブコンポーネントの名前を受け取る文字列ポインタへのポインタである。
pbRepairBOOLEAN*inout予約済みのブール値を受け取るポインタである。
vtbl 36 HRESULT GetFileRestoreStatus(VSS_FILE_RESTORE_STATUS* pStatus)
pStatusVSS_FILE_RESTORE_STATUS*inoutコンポーネント内ファイルの復元状況を示す VSS_FILE_RESTORE_STATUS 列挙値を受け取るポインタである。
vtbl 37 HRESULT AddDifferencedFilesByLastModifyTime(LPWSTR wszPath, LPWSTR wszFilespec, BOOL bRecursive, FILETIME ftLastModifyTime)
wszPathLPWSTRin差分対象ファイルが存在するパスを指定する。
wszFilespecLPWSTRin差分対象とするファイル名のパターンを指定する。
bRecursiveBOOLin指定パス配下を再帰的に対象とするかどうかを指定する。
ftLastModifyTimeFILETIMEinこの時刻より後に更新されたファイルを差分対象とする基準の最終更新日時を指定する。
vtbl 38 HRESULT AddDifferencedFilesByLastModifyLSN(LPWSTR wszPath, LPWSTR wszFilespec, BOOL bRecursive, LPWSTR bstrLsnString)
wszPathLPWSTRin差分対象ファイルが存在するパスを指定する。
wszFilespecLPWSTRin差分対象とするファイル名のパターンを指定する。
bRecursiveBOOLin指定パス配下を再帰的に対象とするかどうかを指定する。
bstrLsnStringLPWSTRin差分の基準となる論理シーケンス番号(LSN)を表す文字列を指定する。
vtbl 39 HRESULT GetDifferencedFilesCount(DWORD* pcDifferencedFiles)
pcDifferencedFilesDWORD*inoutこのコンポーネントに関連付けられた差分ファイルセットの数を受け取るポインタである。
vtbl 40 HRESULT GetDifferencedFile(DWORD iDifferencedFile, LPWSTR* pbstrPath, LPWSTR* pbstrFilespec, BOOL* pbRecursive, LPWSTR* pbstrLsnString, FILETIME* pftLastModifyTime)
iDifferencedFileDWORDin取得する差分ファイルセットの 0 から始まるインデックスを指定する。
pbstrPathLPWSTR*inout差分ファイルのパスを受け取る文字列ポインタへのポインタである。
pbstrFilespecLPWSTR*inout差分ファイルのファイル名パターンを受け取る文字列ポインタへのポインタである。
pbRecursiveBOOL*inout再帰的に対象とするかどうかを示すブール値を受け取るポインタである。
pbstrLsnStringLPWSTR*inout差分の基準となる LSN 文字列を受け取る文字列ポインタへのポインタである。
pftLastModifyTimeFILETIME*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 指定が可能。