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

ITargetInfo

COM
IID9f7d7bb8-20b3-11da-81a5-0030f1642e3c継承元IUnknown自前メソッド開始 vtbl3

メソッド 21

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

vtbl 3 HRESULT GetTargetMode(WcmTargetMode* TargetMode)
TargetModeWcmTargetMode*out対象がオンラインかオフラインかなどのターゲットモードを受け取るポインタである。
vtbl 4 HRESULT SetTargetMode(WcmTargetMode TargetMode)
TargetModeWcmTargetModein設定するターゲットモードを指定する。
vtbl 5 HRESULT GetTemporaryStoreLocation(LPWSTR* TemporaryStoreLocation)
TemporaryStoreLocationLPWSTR*out一時ストアの場所を示すパスを受け取るポインタである。
vtbl 6 HRESULT SetTemporaryStoreLocation(LPWSTR TemporaryStoreLocation)
TemporaryStoreLocationLPWSTRin一時ストアの場所として設定するパスを指定する。
vtbl 7 HRESULT GetTargetID(LPWSTR* TargetID)
TargetIDLPWSTR*outターゲットを識別する ID 文字列を受け取るポインタである。
vtbl 8 HRESULT SetTargetID(GUID TargetID)
TargetIDGUIDinターゲットを識別する GUID を指定する。
vtbl 9 HRESULT GetTargetProcessorArchitecture(LPWSTR* ProcessorArchitecture)
ProcessorArchitectureLPWSTR*outターゲットのプロセッサアーキテクチャを示す文字列を受け取るポインタである。
vtbl 10 HRESULT SetTargetProcessorArchitecture(LPWSTR ProcessorArchitecture)
ProcessorArchitectureLPWSTRin設定するターゲットのプロセッサアーキテクチャを示す文字列を指定する。
vtbl 11 HRESULT GetProperty(BOOL Offline, LPWSTR Property, LPWSTR* Value)
OfflineBOOLinオフラインのターゲットを対象とする場合は TRUE を指定する。
PropertyLPWSTRin取得するプロパティの名前を指定する。
ValueLPWSTR*out指定したプロパティの値を受け取るポインタである。
vtbl 12 HRESULT SetProperty(BOOL Offline, LPWSTR Property, LPWSTR Value)
OfflineBOOLinオフラインのターゲットを対象とする場合は TRUE を指定する。
PropertyLPWSTRin設定するプロパティの名前を指定する。
ValueLPWSTRinプロパティに設定する値を指定する。
vtbl 13 HRESULT GetEnumerator(IItemEnumerator** Enumerator)
EnumeratorIItemEnumerator**outターゲットのプロパティを列挙する IItemEnumerator インターフェイスを受け取るポインタである。
vtbl 14 HRESULT ExpandTarget(BOOL Offline, LPWSTR Location, LPWSTR* ExpandedLocation)
OfflineBOOLinオフラインのターゲットを対象とする場合は TRUE を指定する。
LocationLPWSTRin環境変数などを含む展開前の場所文字列を指定する。
ExpandedLocationLPWSTR*out展開後の場所文字列を受け取るポインタである。
vtbl 15 HRESULT ExpandTargetPath(BOOL Offline, LPWSTR Location, LPWSTR* ExpandedLocation)
OfflineBOOLinオフラインのターゲットを対象とする場合は TRUE を指定する。
LocationLPWSTRin環境変数などを含む展開前のパス文字列を指定する。
ExpandedLocationLPWSTR*out展開後のパス文字列を受け取るポインタである。
vtbl 16 HRESULT SetModulePath(LPWSTR Module, LPWSTR Path)
ModuleLPWSTRinパスを設定する対象モジュールの名前を指定する。
PathLPWSTRinモジュールに設定するパスを指定する。
vtbl 17 HRESULT LoadModule(LPWSTR Module, HMODULE* ModuleHandle)
ModuleLPWSTRin読み込む対象モジュールの名前を指定する。
ModuleHandleHMODULE*out読み込まれたモジュールのハンドルを受け取るポインタである。
vtbl 18 HRESULT SetWow64Context(LPWSTR InstallerModule, BYTE* Wow64Context)
InstallerModuleLPWSTRinWOW64 コンテキストを設定する対象のインストーラモジュール名を指定する。
Wow64ContextBYTE*in設定する WOW64 コンテキストデータへのポインタである。
vtbl 19 HRESULT TranslateWow64(LPWSTR ClientArchitecture, LPWSTR Value, LPWSTR* TranslatedValue)
ClientArchitectureLPWSTRin変換元となるクライアントのアーキテクチャを示す文字列を指定する。
ValueLPWSTRin変換対象の値(パスなど)を指定する。
TranslatedValueLPWSTR*outWOW64 変換後の値を受け取るポインタである。
vtbl 20 HRESULT SetSchemaHiveLocation(LPWSTR pwzHiveDir)
pwzHiveDirLPWSTRinスキーマハイブを配置するディレクトリのパスを指定する。
vtbl 21 HRESULT GetSchemaHiveLocation(LPWSTR* pHiveLocation)
pHiveLocationLPWSTR*outスキーマハイブのディレクトリのパスを受け取るポインタである。
vtbl 22 HRESULT SetSchemaHiveMountName(LPWSTR pwzMountName)
pwzMountNameLPWSTRinスキーマハイブをマウントする際の名前を指定する。
vtbl 23 HRESULT GetSchemaHiveMountName(LPWSTR* pMountName)
pMountNameLPWSTR*outスキーマハイブのマウント名を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_ITargetInfo "{9F7D7BB8-20B3-11DA-81A5-0030F1642E3C}"
#usecom global ITargetInfo IID_ITargetInfo "{}"
#comfunc global ITargetInfo_GetTargetMode                   3 var
#comfunc global ITargetInfo_SetTargetMode                   4 int
#comfunc global ITargetInfo_GetTemporaryStoreLocation       5 var
#comfunc global ITargetInfo_SetTemporaryStoreLocation       6 wstr
#comfunc global ITargetInfo_GetTargetID                     7 var
#comfunc global ITargetInfo_SetTargetID                     8 int
#comfunc global ITargetInfo_GetTargetProcessorArchitecture  9 var
#comfunc global ITargetInfo_SetTargetProcessorArchitecture  10 wstr
#comfunc global ITargetInfo_GetProperty                     11 int,wstr,var
#comfunc global ITargetInfo_SetProperty                     12 int,wstr,wstr
#comfunc global ITargetInfo_GetEnumerator                   13 sptr
#comfunc global ITargetInfo_ExpandTarget                    14 int,wstr,var
#comfunc global ITargetInfo_ExpandTargetPath                15 int,wstr,var
#comfunc global ITargetInfo_SetModulePath                   16 wstr,wstr
#comfunc global ITargetInfo_LoadModule                      17 wstr,sptr
#comfunc global ITargetInfo_SetWow64Context                 18 wstr,var
#comfunc global ITargetInfo_TranslateWow64                  19 wstr,wstr,var
#comfunc global ITargetInfo_SetSchemaHiveLocation           20 wstr
#comfunc global ITargetInfo_GetSchemaHiveLocation           21 var
#comfunc global ITargetInfo_SetSchemaHiveMountName          22 wstr
#comfunc global ITargetInfo_GetSchemaHiveMountName          23 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。