Win32 API 日本語リファレンス
ホームSystem.UpdateAgent › IUpdate

IUpdate

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID6a92b07a-d821-4682-b423-5c805022cc4d継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 45

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

vtbl 7 HRESULT get_Title(LPWSTR* retval)
retvalLPWSTR*out更新のタイトルを受け取る文字列ポインタへのポインタである。
vtbl 8 HRESULT get_AutoSelectOnWebSites(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*outWeb サイト上で自動的に選択される更新かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 9 HRESULT get_BundledUpdates(IUpdateCollection** retval)
retvalIUpdateCollection**outこの更新にバンドルされている更新のコレクションを表す IUpdateCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 10 HRESULT get_CanRequireSource(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*outインストール時にソースメディアを必要とする可能性があるかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 11 HRESULT get_Categories(ICategoryCollection** retval)
retvalICategoryCollection**out更新が属するカテゴリのコレクションを表す ICategoryCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 12 HRESULT get_Deadline(VARIANT* retval)
retvalVARIANT*out更新のインストール期限を格納した VARIANT を受け取る出力先へのポインタである。期限がない場合は空の VARIANT が返る。
vtbl 13 HRESULT get_DeltaCompressedContentAvailable(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out差分圧縮コンテンツが利用可能かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 14 HRESULT get_DeltaCompressedContentPreferred(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out差分圧縮コンテンツの使用が推奨されるかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 15 HRESULT get_Description(LPWSTR* retval)
retvalLPWSTR*out更新の説明文を受け取る文字列ポインタへのポインタである。
vtbl 16 HRESULT get_EulaAccepted(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out使用許諾契約 (EULA) が承諾済みかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 17 HRESULT get_EulaText(LPWSTR* retval)
retvalLPWSTR*out更新の使用許諾契約 (EULA) の本文を受け取る文字列ポインタへのポインタである。
vtbl 18 HRESULT get_HandlerID(LPWSTR* retval)
retvalLPWSTR*out更新を処理するハンドラーの識別子を受け取る文字列ポインタへのポインタである。
vtbl 19 HRESULT get_Identity(IUpdateIdentity** retval)
retvalIUpdateIdentity**out更新の一意な識別情報を表す IUpdateIdentity インターフェイスを受け取るポインタへのポインタである。
vtbl 20 HRESULT get_Image(IImageInformation** retval)
retvalIImageInformation**out更新に関連付けられた画像情報を表す IImageInformation インターフェイスを受け取るポインタへのポインタである。画像がない場合は NULL が返る。
vtbl 21 HRESULT get_InstallationBehavior(IInstallationBehavior** retval)
retvalIInstallationBehavior**out更新のインストール時の動作を表す IInstallationBehavior インターフェイスを受け取るポインタへのポインタである。
vtbl 22 HRESULT get_IsBeta(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新がベータ版かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 23 HRESULT get_IsDownloaded(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新がダウンロード済みかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 24 HRESULT get_IsHidden(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新が非表示に設定されているかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 25 HRESULT put_IsHidden(VARIANT_BOOL value)
valueVARIANT_BOOLin更新を非表示に設定するかどうかを VARIANT_BOOL で指定する。
vtbl 26 HRESULT get_IsInstalled(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新がインストール済みかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 27 HRESULT get_IsMandatory(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新が必須かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 28 HRESULT get_IsUninstallable(VARIANT_BOOL* retval)
retvalVARIANT_BOOL*out更新がアンインストール可能かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 29 HRESULT get_Languages(IStringCollection** retval)
retvalIStringCollection**out更新がサポートする言語の一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 30 HRESULT get_LastDeploymentChangeTime(DOUBLE* retval)
retvalDOUBLE*out更新の配置が最後に変更された日時 (DATE 値) を受け取る出力先へのポインタである。
vtbl 31 HRESULT get_MaxDownloadSize(DECIMAL* retval)
retvalDECIMAL*out更新の最大ダウンロードサイズ (バイト数) を表す DECIMAL を受け取る出力先へのポインタである。
vtbl 32 HRESULT get_MinDownloadSize(DECIMAL* retval)
retvalDECIMAL*out更新の最小ダウンロードサイズ (バイト数) を表す DECIMAL を受け取る出力先へのポインタである。
vtbl 33 HRESULT get_MoreInfoUrls(IStringCollection** retval)
retvalIStringCollection**out更新に関する詳細情報の URL 一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 34 HRESULT get_MsrcSeverity(LPWSTR* retval)
retvalLPWSTR*out更新の MSRC 深刻度 (例: Critical, Important) を受け取る文字列ポインタへのポインタである。
vtbl 35 HRESULT get_RecommendedCpuSpeed(INT* retval)
retvalINT*out更新が推奨する CPU 速度 (MHz) を受け取る出力先へのポインタである。
vtbl 36 HRESULT get_RecommendedHardDiskSpace(INT* retval)
retvalINT*out更新が推奨するハードディスクの空き容量 (MB) を受け取る出力先へのポインタである。
vtbl 37 HRESULT get_RecommendedMemory(INT* retval)
retvalINT*out更新が推奨するメモリ容量 (MB) を受け取る出力先へのポインタである。
vtbl 38 HRESULT get_ReleaseNotes(LPWSTR* retval)
retvalLPWSTR*out更新のリリースノートを受け取る文字列ポインタへのポインタである。
vtbl 39 HRESULT get_SecurityBulletinIDs(IStringCollection** retval)
retvalIStringCollection**out更新に関連するセキュリティ情報 (セキュリティ情報 ID) の一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 40 HRESULT get_SupersededUpdateIDs(IStringCollection** retval)
retvalIStringCollection**outこの更新によって置き換えられる更新の ID 一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 41 HRESULT get_SupportUrl(LPWSTR* retval)
retvalLPWSTR*out更新のサポートページの URL を受け取る文字列ポインタへのポインタである。
vtbl 42 HRESULT get_Type(UpdateType* retval)
retvalUpdateType*out更新の種類 (UpdateType) を受け取る出力先へのポインタである。
vtbl 43 HRESULT get_UninstallationNotes(LPWSTR* retval)
retvalLPWSTR*out更新のアンインストールに関する注意事項を受け取る文字列ポインタへのポインタである。
vtbl 44 HRESULT get_UninstallationBehavior(IInstallationBehavior** retval)
retvalIInstallationBehavior**out更新のアンインストール時の動作を表す IInstallationBehavior インターフェイスを受け取るポインタへのポインタである。
vtbl 45 HRESULT get_UninstallationSteps(IStringCollection** retval)
retvalIStringCollection**out更新の手動アンインストール手順の一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 46 HRESULT get_KBArticleIDs(IStringCollection** retval)
retvalIStringCollection**out更新に関連する Microsoft サポート技術情報 (KB) の記事 ID 一覧を表す IStringCollection インターフェイスを受け取るポインタへのポインタである。
vtbl 47 HRESULT AcceptEula()
vtbl 48 HRESULT get_DeploymentAction(DeploymentAction* retval)
retvalDeploymentAction*out更新に対する配置アクション (DeploymentAction) を受け取る出力先へのポインタである。
vtbl 49 HRESULT CopyFromCache(LPWSTR path, VARIANT_BOOL toExtractCabFiles)
pathLPWSTRin更新コンテンツのコピー先となるパスを指定する。
toExtractCabFilesVARIANT_BOOLinキャビネット (CAB) ファイルを展開するかどうかを VARIANT_BOOL で指定する。
vtbl 50 HRESULT get_DownloadPriority(DownloadPriority* retval)
retvalDownloadPriority*out更新のダウンロード優先度 (DownloadPriority) を受け取る出力先へのポインタである。
vtbl 51 HRESULT get_DownloadContents(IUpdateDownloadContentCollection** retval)
retvalIUpdateDownloadContentCollection**out更新のダウンロードコンテンツのコレクションを表す IUpdateDownloadContentCollection インターフェイスを受け取るポインタへのポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IUpdate "{6A92B07A-D821-4682-B423-5C805022CC4D}"
#usecom global IUpdate IID_IUpdate "{}"
#comfunc global IUpdate_get_Title                            7 var
#comfunc global IUpdate_get_AutoSelectOnWebSites             8 var
#comfunc global IUpdate_get_BundledUpdates                   9 sptr
#comfunc global IUpdate_get_CanRequireSource                 10 var
#comfunc global IUpdate_get_Categories                       11 sptr
#comfunc global IUpdate_get_Deadline                         12 var
#comfunc global IUpdate_get_DeltaCompressedContentAvailable  13 var
#comfunc global IUpdate_get_DeltaCompressedContentPreferred  14 var
#comfunc global IUpdate_get_Description                      15 var
#comfunc global IUpdate_get_EulaAccepted                     16 var
#comfunc global IUpdate_get_EulaText                         17 var
#comfunc global IUpdate_get_HandlerID                        18 var
#comfunc global IUpdate_get_Identity                         19 sptr
#comfunc global IUpdate_get_Image                            20 sptr
#comfunc global IUpdate_get_InstallationBehavior             21 sptr
#comfunc global IUpdate_get_IsBeta                           22 var
#comfunc global IUpdate_get_IsDownloaded                     23 var
#comfunc global IUpdate_get_IsHidden                         24 var
#comfunc global IUpdate_put_IsHidden                         25 int
#comfunc global IUpdate_get_IsInstalled                      26 var
#comfunc global IUpdate_get_IsMandatory                      27 var
#comfunc global IUpdate_get_IsUninstallable                  28 var
#comfunc global IUpdate_get_Languages                        29 sptr
#comfunc global IUpdate_get_LastDeploymentChangeTime         30 var
#comfunc global IUpdate_get_MaxDownloadSize                  31 var
#comfunc global IUpdate_get_MinDownloadSize                  32 var
#comfunc global IUpdate_get_MoreInfoUrls                     33 sptr
#comfunc global IUpdate_get_MsrcSeverity                     34 var
#comfunc global IUpdate_get_RecommendedCpuSpeed              35 var
#comfunc global IUpdate_get_RecommendedHardDiskSpace         36 var
#comfunc global IUpdate_get_RecommendedMemory                37 var
#comfunc global IUpdate_get_ReleaseNotes                     38 var
#comfunc global IUpdate_get_SecurityBulletinIDs              39 sptr
#comfunc global IUpdate_get_SupersededUpdateIDs              40 sptr
#comfunc global IUpdate_get_SupportUrl                       41 var
#comfunc global IUpdate_get_Type                             42 var
#comfunc global IUpdate_get_UninstallationNotes              43 var
#comfunc global IUpdate_get_UninstallationBehavior           44 sptr
#comfunc global IUpdate_get_UninstallationSteps              45 sptr
#comfunc global IUpdate_get_KBArticleIDs                     46 sptr
#comfunc global IUpdate_AcceptEula                           47
#comfunc global IUpdate_get_DeploymentAction                 48 var
#comfunc global IUpdate_CopyFromCache                        49 wstr,int
#comfunc global IUpdate_get_DownloadPriority                 50 var
#comfunc global IUpdate_get_DownloadContents                 51 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。