ホーム › System.GroupPolicy › IGPMStarterGPO
IGPMStarterGPO
COMIDispatch (デュアル)✅ IDispatch を実装(デュアルインターフェース)。HSP では
comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。メソッド 21
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
| pVal | LPWSTR* | out | スターター GPO の表示名を受け取る文字列ポインタである。 |
| newVal | LPWSTR | in | スターター GPO に設定する新しい表示名を指定する。 |
| pVal | LPWSTR* | out | スターター GPO の説明テキストを受け取る文字列ポインタである。 |
| newVal | LPWSTR | in | スターター GPO に設定する新しい説明テキストを指定する。 |
| pVal | LPWSTR* | out | スターター GPO の作成者名を受け取る文字列ポインタである。 |
| pVal | LPWSTR* | out | スターター GPO に関連付けられた製品名を受け取る文字列ポインタである。 |
| pVal | DOUBLE* | out | スターター GPO の作成日時を表す値 (DATE 値) を受け取る。 |
| pVal | LPWSTR* | out | スターター GPO の ID (GUID) を受け取る文字列ポインタである。 |
| pVal | DOUBLE* | out | スターター GPO の最終更新日時を表す値 (DATE 値) を受け取る。 |
vtbl 16 HRESULT get_Type(GPMStarterGPOType* pVal)
| pVal | GPMStarterGPOType* | out | スターター GPO の種別 (システムまたはカスタム) を表す GPMStarterGPOType 値を受け取る。 |
| pVal | WORD* | out | コンピューター構成のバージョン番号を受け取る。 |
| pVal | WORD* | out | ユーザー構成のバージョン番号を受け取る。 |
| pVal | LPWSTR* | out | スターター GPO のバージョンを表す文字列を受け取る文字列ポインタである。 |
vtbl 20 HRESULT Delete()
vtbl 21 HRESULT Save(LPWSTR bstrSaveFile, VARIANT_BOOL bOverwrite, VARIANT_BOOL bSaveAsSystem, VARIANT* bstrLanguage, VARIANT* bstrAuthor, VARIANT* bstrProduct, VARIANT* bstrUniqueID, VARIANT* bstrVersion, VARIANT* pvarGPMProgress, VARIANT* pvarGPMCancel, IGPMResult** ppIGPMResult)
| bstrSaveFile | LPWSTR | in | スターター GPO を保存する出力ファイル (.cab) のパスを指定する。 |
| bOverwrite | VARIANT_BOOL | in | 保存先ファイルが既に存在する場合に上書きするかどうかを指定する VARIANT_BOOL である。 |
| bSaveAsSystem | VARIANT_BOOL | in | システムスターター GPO として保存するかどうかを指定する VARIANT_BOOL である。 |
| bstrLanguage | VARIANT* | in | 保存するスターター GPO の言語を表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| bstrAuthor | VARIANT* | in | 保存するスターター GPO の作成者名を表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| bstrProduct | VARIANT* | in | 保存するスターター GPO の製品名を表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| bstrUniqueID | VARIANT* | in | 保存するスターター GPO の一意 ID を表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| bstrVersion | VARIANT* | in | 保存するスターター GPO のバージョンを表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| pvarGPMProgress | VARIANT* | in | 進捗通知を受け取るコールバックオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| pvarGPMCancel | VARIANT* | out | 操作をキャンセルするためのオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| ppIGPMResult | IGPMResult** | out | 保存操作の結果 (IGPMResult) を受け取るポインタである。 |
vtbl 22 HRESULT Backup(LPWSTR bstrBackupDir, LPWSTR bstrComment, VARIANT* pvarGPMProgress, VARIANT* pvarGPMCancel, IGPMResult** ppIGPMResult)
| bstrBackupDir | LPWSTR | in | バックアップを格納するディレクトリのパスを指定する。 |
| bstrComment | LPWSTR | in | バックアップに付与するコメントを指定する。 |
| pvarGPMProgress | VARIANT* | in | 進捗通知を受け取るコールバックオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| pvarGPMCancel | VARIANT* | out | 操作をキャンセルするためのオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| ppIGPMResult | IGPMResult** | out | バックアップ操作の結果 (IGPMResult) を受け取るポインタである。 |
vtbl 23 HRESULT CopyTo(VARIANT* pvarNewDisplayName, VARIANT* pvarGPMProgress, VARIANT* pvarGPMCancel, IGPMResult** ppIGPMResult)
| pvarNewDisplayName | VARIANT* | in | コピー先スターター GPO に付与する新しい表示名を表す VARIANT へのポインタである。省略する場合は空の VARIANT を渡す。 |
| pvarGPMProgress | VARIANT* | in | 進捗通知を受け取るコールバックオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| pvarGPMCancel | VARIANT* | in | 操作をキャンセルするためのオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| ppIGPMResult | IGPMResult** | out | コピー操作の結果 (IGPMResult) を受け取るポインタである。 |
vtbl 24 HRESULT GenerateReport(GPMReportType gpmReportType, VARIANT* pvarGPMProgress, VARIANT* pvarGPMCancel, IGPMResult** ppIGPMResult)
| gpmReportType | GPMReportType | in | 生成するレポートの形式 (HTML または XML) を表す GPMReportType 値を指定する。 |
| pvarGPMProgress | VARIANT* | in | 進捗通知を受け取るコールバックオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| pvarGPMCancel | VARIANT* | in | 操作をキャンセルするためのオブジェクトを表す VARIANT へのポインタである。不要な場合は空の VARIANT を渡す。 |
| ppIGPMResult | IGPMResult** | out | レポート生成の結果 (IGPMResult) を受け取るポインタである。 |
vtbl 25 HRESULT GenerateReportToFile(GPMReportType gpmReportType, LPWSTR bstrTargetFilePath, IGPMResult** ppIGPMResult)
| gpmReportType | GPMReportType | in | 生成するレポートの形式 (HTML または XML) を表す GPMReportType 値を指定する。 |
| bstrTargetFilePath | LPWSTR | in | レポートを書き出す出力ファイルのパスを指定する。 |
| ppIGPMResult | IGPMResult** | out | レポート生成の結果 (IGPMResult) を受け取るポインタである。 |
vtbl 26 HRESULT GetSecurityInfo(IGPMSecurityInfo** ppSecurityInfo)
| ppSecurityInfo | IGPMSecurityInfo** | out | スターター GPO のセキュリティ情報 (IGPMSecurityInfo) を受け取るポインタである。 |
vtbl 27 HRESULT SetSecurityInfo(IGPMSecurityInfo* pSecurityInfo)
| pSecurityInfo | IGPMSecurityInfo* | in | スターター GPO に設定するセキュリティ情報 (IGPMSecurityInfo) を指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IGPMStarterGPO "{DFC3F61B-8880-4490-9337-D29C7BA8C2F0}" #usecom global IGPMStarterGPO IID_IGPMStarterGPO "{}" #comfunc global IGPMStarterGPO_get_DisplayName 7 var #comfunc global IGPMStarterGPO_put_DisplayName 8 wstr #comfunc global IGPMStarterGPO_get_Description 9 var #comfunc global IGPMStarterGPO_put_Description 10 wstr #comfunc global IGPMStarterGPO_get_Author 11 var #comfunc global IGPMStarterGPO_get_Product 12 var #comfunc global IGPMStarterGPO_get_CreationTime 13 var #comfunc global IGPMStarterGPO_get_ID 14 var #comfunc global IGPMStarterGPO_get_ModifiedTime 15 var #comfunc global IGPMStarterGPO_get_Type 16 var #comfunc global IGPMStarterGPO_get_ComputerVersion 17 var #comfunc global IGPMStarterGPO_get_UserVersion 18 var #comfunc global IGPMStarterGPO_get_StarterGPOVersion 19 var #comfunc global IGPMStarterGPO_Delete 20 #comfunc global IGPMStarterGPO_Save 21 wstr,int,int,var,var,var,var,var,var,var,sptr #comfunc global IGPMStarterGPO_Backup 22 wstr,wstr,var,var,sptr #comfunc global IGPMStarterGPO_CopyTo 23 var,var,var,sptr #comfunc global IGPMStarterGPO_GenerateReport 24 int,var,var,sptr #comfunc global IGPMStarterGPO_GenerateReportToFile 25 int,wstr,sptr #comfunc global IGPMStarterGPO_GetSecurityInfo 26 sptr #comfunc global IGPMStarterGPO_SetSecurityInfo 27 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IGPMStarterGPO "{DFC3F61B-8880-4490-9337-D29C7BA8C2F0}" #usecom global IGPMStarterGPO IID_IGPMStarterGPO "{}" #comfunc global IGPMStarterGPO_get_DisplayName 7 sptr #comfunc global IGPMStarterGPO_put_DisplayName 8 wstr #comfunc global IGPMStarterGPO_get_Description 9 sptr #comfunc global IGPMStarterGPO_put_Description 10 wstr #comfunc global IGPMStarterGPO_get_Author 11 sptr #comfunc global IGPMStarterGPO_get_Product 12 sptr #comfunc global IGPMStarterGPO_get_CreationTime 13 sptr #comfunc global IGPMStarterGPO_get_ID 14 sptr #comfunc global IGPMStarterGPO_get_ModifiedTime 15 sptr #comfunc global IGPMStarterGPO_get_Type 16 sptr #comfunc global IGPMStarterGPO_get_ComputerVersion 17 sptr #comfunc global IGPMStarterGPO_get_UserVersion 18 sptr #comfunc global IGPMStarterGPO_get_StarterGPOVersion 19 sptr #comfunc global IGPMStarterGPO_Delete 20 #comfunc global IGPMStarterGPO_Save 21 wstr,int,int,sptr,sptr,sptr,sptr,sptr,sptr,sptr,sptr #comfunc global IGPMStarterGPO_Backup 22 wstr,wstr,sptr,sptr,sptr #comfunc global IGPMStarterGPO_CopyTo 23 sptr,sptr,sptr,sptr #comfunc global IGPMStarterGPO_GenerateReport 24 int,sptr,sptr,sptr #comfunc global IGPMStarterGPO_GenerateReportToFile 25 int,wstr,sptr #comfunc global IGPMStarterGPO_GetSecurityInfo 26 sptr #comfunc global IGPMStarterGPO_SetSecurityInfo 27 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。