IAzApplication
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
インストール済みのアプリケーションのインスタンスを定義します。IAzApplication オブジェクトは、アプリケーションがインストールされたときに作成されます。
解説(Remarks)
IAzApplication オブジェクトは、アプリケーションのインスタンスに適用されるすべての承認ポリシーが格納されるコンテナーです。
メソッド 61
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
アプリケーションの名前を設定または取得します。(Get)
| pbstrName | LPWSTR* | out | アプリケーションの名前を受け取る文字列へのポインタである。 |
解説(Remarks)
Name プロパティの最大長は 512 文字です。
アプリケーションの名前を設定または取得します。(Put)
| bstrName | LPWSTR | in | アプリケーションに設定する名前を指定する。 |
解説(Remarks)
Name プロパティの最大長は 512 文字です。
アプリケーションを説明するコメントを設定または取得します。(Get)
| pbstrDescription | LPWSTR* | out | アプリケーションの説明文を受け取る文字列へのポインタである。 |
解説(Remarks)
Description プロパティの最大長は 1,024 文字です。
アプリケーションを説明するコメントを設定または取得します。(Put)
| bstrDescription | LPWSTR | in | アプリケーションに設定する説明文を指定する。 |
解説(Remarks)
Description プロパティの最大長は 1,024 文字です。
アプリケーションが情報を格納するために使用できる不透明なフィールドを設定または取得します。(IAzApplication.get_ApplicationData)
| pbstrApplicationData | LPWSTR* | out | アプリケーション固有のデータ文字列を受け取る文字列へのポインタである。 |
解説(Remarks)
アプリケーションが情報を格納するために使用できる不透明なフィールドを設定または取得します。(IAzApplication.put_ApplicationData)
| bstrApplicationData | LPWSTR | in | アプリケーション固有のデータ文字列を指定する。 |
解説(Remarks)
アプリケーション固有の操作を実行するためにユーザーインターフェイス (UI) が使用するインターフェイスのクラス識別子 (CLSID) を設定または取得します。(Get)
| pbstrProp | LPWSTR* | out | アプリケーションが使用する認可インターフェイスの CLSID 文字列を受け取る文字列へのポインタである。 |
解説(Remarks)
CLSID は、COM クラスに関連付けられた GUID です。
アプリケーション固有の操作を実行するためにユーザーインターフェイス (UI) が使用するインターフェイスのクラス識別子 (CLSID) を設定または取得します。(Put)
| bstrProp | LPWSTR | in | アプリケーションが使用する認可インターフェイスの CLSID 文字列を指定する。 |
解説(Remarks)
CLSID は、COM クラスに関連付けられた GUID です。
アプリケーションのバージョンを設定または取得します。(Get)
| pbstrProp | LPWSTR* | out | アプリケーションのバージョン文字列を受け取る文字列へのポインタである。 |
アプリケーションのバージョンを設定または取得します。(Put)
| bstrProp | LPWSTR | in | アプリケーションのバージョン文字列を指定する。 |
IAzApplication の GenerateAudits プロパティは、実行時監査を生成するかどうかを示す値を設定または取得します。(Get)
| pbProp | BOOL* | out | 実行時監査を生成するかどうかを示す BOOL 値を受け取るポインタである。 |
解説(Remarks)
GenerateAudits プロパティは、クライアントコンテキストの作成、クライアントコンテキストの削除、およびアクセスチェックの実行時監査を制御します。クライアントコンテキストは、セキュリティ識別子 (SID)、名前、またはトークンから作成できます。
アプリケーションの初期化に関する監査は、AzAuthorizationStore.GenerateAudits プロパティが制御します。
IAzApplication の GenerateAudits プロパティは、実行時監査を生成するかどうかを示す値を設定または取得します。(Put)
| bProp | BOOL | in | 実行時監査を生成するかどうかを示す BOOL 値を指定する。 |
解説(Remarks)
GenerateAudits プロパティは、クライアントコンテキストの作成、クライアントコンテキストの削除、およびアクセスチェックの実行時監査を制御します。クライアントコンテキストは、セキュリティ識別子 (SID)、名前、またはトークンから作成できます。
アプリケーションの初期化に関する監査は、AzAuthorizationStore.GenerateAudits プロパティが制御します。
承認ストアが変更されたときにポリシー監査を生成するかどうかを示す値を設定または取得します。(IAzApplication.get_ApplyStoreSacl)
| pbProp | BOOL* | out | ストアの SACL を適用するかどうかを示す BOOL 値を受け取るポインタである。 |
解説(Remarks)
ポリシー監査は、基になるポリシーストアが変更されたときに生成されます。成功と失敗の両方の監査が要求されます。
このプロパティは、IAzApplication オブジェクトとその子オブジェクトについてのみポリシー監査を制御します。
承認ストアが変更されたときにポリシー監査を生成するかどうかを示す値を設定または取得します。(IAzApplication.put_ApplyStoreSacl)
| bProp | BOOL | in | ストアの SACL を適用するかどうかを示す BOOL 値を指定する。 |
解説(Remarks)
ポリシー監査は、基になるポリシーストアが変更されたときに生成されます。成功と失敗の両方の監査が要求されます。
このプロパティは、IAzApplication オブジェクトとその子オブジェクトについてのみポリシー監査を制御します。
オブジェクトを初期化したユーザーコンテキストがそのオブジェクトを変更できるかどうかを示す値を取得します。
| pfProp | BOOL* | out | アプリケーションが書き込み可能で開かれているかどうかを示す BOOL 値を受け取るポインタである。 |
指定したプロパティ ID を持つ IAzApplication オブジェクトのプロパティを返します。
| lPropId | INT | in | 返す IAzApplication オブジェクトのプロパティのプロパティ ID。指定できる値を次の表に示します。
| ||||||||||||||||||||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 | ||||||||||||||||||||||||||||||||
| pvarProp | VARIANT* | out | 返される IAzApplication オブジェクトのプロパティへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定したプロパティ ID を持つ IAzApplication オブジェクトのプロパティに、指定した値を設定します。
| lPropId | INT | in | 設定する IAzApplication オブジェクトのプロパティのプロパティ ID。指定できる値を次の表に示します。
| ||||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定した IAzApplication オブジェクトのプロパティに設定する値。使用するデータの型は、lPropId パラメーターの値によって異なります。
| ||||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
ポリシー管理者として機能するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarAdmins | VARIANT* | out | ポリシー管理者の SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー閲覧者として機能するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarReaders | VARIANT* | out | ポリシー読み取り者の SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
JScript では、返された SAFEARRAY を JScript の Array オブジェクトに変換する必要があります。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー管理者として機能するプリンシパルの一覧に追加します。(IAzApplication.AddPolicyAdministrator)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー管理者の一覧を表示するには、PolicyAdministrators プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
IAzApplication の DeletePolicyAdministrator メソッドは、指定したセキュリティ識別子をテキスト形式で、ポリシー管理者として機能するプリンシパルの一覧から削除します。
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
ポリシー管理者の一覧を表示するには、PolicyAdministrators プロパティを使用します。
指定したセキュリティ識別子 (SID) をテキスト形式で、ポリシー閲覧者として機能するプリンシパルの一覧に追加します。(IAzApplication.AddPolicyReader)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧を表示するには、PolicyReaders プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
IAzApplication の DeletePolicyReader メソッドは、指定したセキュリティ識別子をテキスト形式で、ポリシー閲覧者として機能するプリンシパルの一覧から削除します。
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧を表示するには、PolicyReaders プロパティを使用します。
ポリシーデータから IAzScope オブジェクトを列挙するために使用する IAzScopes オブジェクトを取得します。
| ppScopeCollection | IAzScopes** | out | アプリケーション内のスコープのコレクションを表す IAzScopes インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、IAzApplication オブジェクトの直接の子オブジェクトである IAzScope オブジェクトの列挙にのみ使用できます。
指定した名前の IAzScope オブジェクトを開きます。
| bstrScopeName | LPWSTR | in | 開く IAzScope オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppScope | IAzScope** | out | 開かれた IAzScope オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzScope オブジェクトを作成します。
| bstrScopeName | LPWSTR | in | 新しい IAzScope オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppScope | IAzScope** | out | 作成された IAzScope オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzScope::Submit メソッドを呼び出す必要があります。
返される IAzScope オブジェクトは、IAzApplication オブジェクトの直接の子オブジェクトです。
指定した名前の IAzScope オブジェクトを IAzApplication オブジェクトから削除します。
| bstrScopeName | LPWSTR | in | 削除する IAzScope オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzScope オブジェクトへの IAzScope 参照が残っている場合でも、その IAzScope オブジェクトは使用できなくなります。C++ では、削除された IAzScope オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
ポリシーデータから IAzOperation オブジェクトを列挙するために使用する IAzOperations オブジェクトを取得します。
| ppOperationCollection | IAzOperations** | out | アプリケーション内の操作のコレクションを表す IAzOperations インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、IAzApplication オブジェクトの直接の子オブジェクトである IAzOperation オブジェクトの列挙にのみ使用できます。
指定した名前の IAzOperation オブジェクトを開きます。
| bstrOperationName | LPWSTR | in | 開く IAzOperation オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppOperation | IAzOperation** | out | 開かれた IAzOperation オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzOperation オブジェクトを作成します。
| bstrOperationName | LPWSTR | in | 新しい IAzOperation オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppOperation | IAzOperation** | out | 作成された IAzOperation オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzOperation::Submit メソッドを呼び出す必要があります。
返される IAzOperation オブジェクトは、IAzApplication オブジェクトの直接の子オブジェクトです。
指定した名前の IAzOperation オブジェクトを IAzApplication オブジェクトから削除します。
| bstrOperationName | LPWSTR | in | 削除する IAzApplication オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzOperation オブジェクトへの IAzApplication 参照が残っている場合でも、その IAzOperation オブジェクトは使用できなくなります。C++ では、削除された IAzOperation オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
IAzApplication の Tasks プロパティは、ポリシーデータから IAzTask オブジェクトを列挙するために使用する IAzTasks オブジェクトを取得します。
| ppTaskCollection | IAzTasks** | out | アプリケーション内のタスクのコレクションを表す IAzTasks インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、IAzApplication オブジェクトの直接の子オブジェクトである IAzTask オブジェクトの列挙にのみ使用できます。
指定した名前の IAzTask オブジェクトを開きます。(IAzApplication.OpenTask)
| bstrTaskName | LPWSTR | in | 開く IAzTask オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppTask | IAzTask** | out | 開かれた IAzTask オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzTask オブジェクトを作成します。(IAzApplication.CreateTask)
| bstrTaskName | LPWSTR | in | 新しい IAzTask オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppTask | IAzTask** | out | 作成された IAzTask オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzTask::Submit メソッドを呼び出す必要があります。
返される IAzTask オブジェクトは、IAzApplication オブジェクトの直接の子オブジェクトです。
指定した名前の IAzTask オブジェクトを IAzApplication オブジェクトから削除します。
| bstrTaskName | LPWSTR | in | 削除する IAzTask オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzTask オブジェクトへの IAzTask 参照が残っている場合でも、その IAzTask オブジェクトは使用できなくなります。C++ では、削除された IAzTask オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
ポリシーデータから IAzApplicationGroup オブジェクトを列挙するために使用する IAzApplicationGroups オブジェクトを取得します。(IAzApplication.get_ApplicationGroups)
| ppGroupCollection | IAzApplicationGroups** | out | アプリケーションレベルのアプリケーショングループのコレクションを表す IAzApplicationGroups インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、IAzApplication オブジェクトの直接の子オブジェクトである IAzApplicationGroup オブジェクトの列挙にのみ使用できます。
名前を指定して IAzApplicationGroup オブジェクトを開きます。(IAzApplication.OpenApplicationGroup)
| bstrGroupName | LPWSTR | in | 開く IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppGroup | IAzApplicationGroup** | out | 開かれた IAzApplicationGroup オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzApplicationGroup オブジェクトを作成します。(IAzApplication.CreateApplicationGroup)
| bstrGroupName | LPWSTR | in | 新しい IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppGroup | IAzApplicationGroup** | out | 作成された IAzApplicationGroup オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzApplicationGroup::Submit メソッドを呼び出す必要があります。
返される IAzApplicationGroup オブジェクトは、IAzApplication オブジェクトの直接の子オブジェクトです。
指定した名前の IAzApplicationGroup オブジェクトを IAzApplication オブジェクトから削除します。
| bstrGroupName | LPWSTR | in | 削除する IAzApplicationGroup オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzApplicationGroup オブジェクトへの IAzApplicationGroup 参照が残っている場合でも、その IAzApplicationGroup オブジェクトは使用できなくなります。C++ では、削除された IAzApplicationGroup オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
IAzApplication の Roles プロパティは、ポリシーデータから IAzRole オブジェクトを列挙するために使用する IAzRoles オブジェクトを取得します。
| ppRoleCollection | IAzRoles** | out | アプリケーション内のロールのコレクションを表す IAzRoles インターフェイスを受け取るポインタである。 |
解説(Remarks)
このプロパティは、IAzApplication オブジェクトの直接の子オブジェクトである IAzRole オブジェクトの列挙にのみ使用できます。
指定した名前の IAzRole オブジェクトを開きます。(IAzApplication.OpenRole)
| bstrRoleName | LPWSTR | in | 開く IAzRole オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppRole | IAzRole** | out | 開かれた IAzRole オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定した名前の IAzRole オブジェクトを作成します。(IAzApplication.CreateRole)
| bstrRoleName | LPWSTR | in | 新しい IAzRole オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppRole | IAzRole** | out | 作成された IAzRole オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
返されたオブジェクトに対する変更を永続化するには、IAzRole::Submit メソッドを呼び出す必要があります。
返される IAzRole オブジェクトは、IAzApplication オブジェクトの直接の子オブジェクトです。
指定した名前の IAzRole オブジェクトを IAzApplication オブジェクトから削除します。
| bstrRoleName | LPWSTR | in | 削除する IAzRole オブジェクトの名前。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
キャッシュから削除された IAzRole オブジェクトへの IAzRole 参照が残っている場合でも、その IAzRole オブジェクトは使用できなくなります。C++ では、削除された IAzRole オブジェクトへの参照を IUnknown::Release メソッドを呼び出して解放する必要があります。C# および Visual Basic では、削除されたオブジェクトへの参照は自動的に解放されます。
指定したクライアントトークンから IAzClientContext オブジェクトのポインターを取得します。
| ullTokenHandle | ULONGLONG | in | クライアントを指定する Windows トークンのハンドル。このパラメーターが NULL の場合、呼び出し元スレッドの偽装トークンが使用されます。スレッドに偽装トークンがない場合は、プロセストークンが使用されます。トークンは、TOKEN_QUERY、TOKEN_IMPERSONATE、および TOKEN_DUPLICATE アクセス権で開かれている必要があります。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
| ppClientContext | IAzClientContext** | out | 返される IAzClientContext オブジェクトへのポインターへのポインター。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
指定したプリンシパルを、指定したプリンシパルの一覧に追加します。(IAzApplication.AddPropertyItem)
| lPropId | INT | in | varProp パラメーターで指定したプリンシパルを追加する先のプリンシパル一覧のプロパティ ID。指定できる値を次の表に示します。
| ||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定したプリンシパルの一覧に追加するプリンシパル。 このバリアントは BSTR バリアントである必要があります。 lPropId パラメーターに AZ_PROP_POLICY_ADMINS_NAME、AZ_PROP_POLICY_READERS_NAME、または AZ_PROP_DELEGATED_POLICY_USERS_NAME を指定した場合、文字列は一覧に追加するアカウントのアカウント名になります。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。 | ||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したプリンシパルを、指定したプリンシパルの一覧から削除します。(IAzApplication.DeletePropertyItem)
| lPropId | INT | in | varProp パラメーターで指定したプリンシパルを削除する対象のプリンシパル一覧のプロパティ ID。指定できる値を次の表に示します。
| ||||||||||||||
| varProp | VARIANT | in | lPropId パラメーターで指定したプリンシパルの一覧から削除するプリンシパル。 このバリアントは BSTR バリアントである必要があります。 lPropId パラメーターに AZ_PROP_POLICY_ADMINS、AZ_PROP_POLICY_READERS、または AZ_PROP_DELEGATED_POLICY_USERS を指定した場合、文字列は一覧から削除する Windows アカウントの セキュリティ識別子 (SID) のテキスト形式になります。lPropId パラメーターに AZ_PROP_POLICY_ADMINS_NAME、AZ_PROP_POLICY_READERS_NAME、または AZ_PROP_DELEGATED_POLICY_USERS_NAME を指定した場合、文字列は一覧から削除するアカウントのアカウント名になります。アカウント名は、ユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com")、または "ExampleDomain\UserName" 形式のいずれかを使用できます。 | ||||||||||||||
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
IAzApplication オブジェクトに対して行った変更を永続化します。
| lFlags | INT | in | Submit メソッドの動作を変更するフラグ。既定値は 0 です。AZ_SUBMIT_FLAG_ABORT フラグを指定すると、オブジェクトに対する変更は破棄され、オブジェクトは基になるポリシーストアの内容に合わせて更新されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
IAzApplication オブジェクトへの追加や変更は、Submit メソッドを呼び出すまで永続化されません。
Submit メソッドの効果は子オブジェクトには及びません。子オブジェクトは個別にポリシーストアへ永続化する必要があります。作成した IAzApplication オブジェクトは、参照されたり親オブジェクトになったりする前に、Submit しておく必要があります。オブジェクトのデストラクターは、未 Submit の変更を通知なしに破棄します。
クライアント ID を (ドメイン名, クライアント名) のペアとして指定し、IAzClientContext オブジェクトのポインターを取得します。
| ClientName | LPWSTR | in | セキュリティプリンシパルの名前。 |
| DomainName | LPWSTR | in | ユーザーアカウントが存在するドメイン名。既定値は NULL です。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。このパラメーターには、次のいずれかの値を指定できます。 |
| ppClientContext | IAzClientContext** | out | 返される IAzClientContext オブジェクトへのポインターへのポインター。 |
戻り値
関数が成功した場合、S_OK を返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
可能であれば、InitializeClientContextFromName ではなく InitializeClientContextFromToken 関数を呼び出してください。InitializeClientContextFromName は、クライアントが実際にログオンしていた場合にログオントークンから得られる情報を取得しようとします。実際のログオントークンには、ログオンの種類やログオンプロパティなどのより多くの情報が含まれ、ログオンに使用された認証パッケージの動作が反映されます。InitializeClientContextFromToken によって作成されるクライアントコンテキストはログオントークンを使用するため、InitializeClientContextFromName によって作成されるクライアントコンテキストよりも完全で正確です。
DomainName パラメーターと ClientName パラメーターの組み合わせは、SidTypeUser を表す必要があります。
サポートされる名前形式は、LookupAccountName 関数がサポートするものと同じです。
委任ポリシーユーザーとして機能するプリンシパルのセキュリティ識別子 (SID) をテキスト形式で取得します。
| pvarDelegatedPolicyUsers | VARIANT* | out | 委任ポリシーユーザーの SID の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
指定したセキュリティ識別子 (SID) をテキスト形式で、委任ポリシーユーザーとして機能するプリンシパルの一覧に追加します。(IAzApplication.AddDelegatedPolicyUser)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧に追加する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。このパラメーターには、次のいずれかの値を指定できます。 |
戻り値
C++
メソッドが成功した場合、S_OK を返します。XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
それ以外の HRESULT 値は、操作が失敗したことを示します。
VB
メソッドが成功した場合、S_OK を返します。XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
IAzApplication::DeleteDelegatedPolicyUser メソッドは、指定したセキュリティ識別子をテキスト形式で、委任ポリシーユーザーとして機能するプリンシパルの一覧から削除します。
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧から削除する SID のテキスト形式。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
委任ポリシーユーザーは XML ストアではサポートされません。
委任ポリシーユーザーの一覧を表示するには、DelegatedPolicyUsers プロパティを使用します。
指定したセキュリティ識別子 (SID) のテキスト形式から IAzClientContext オブジェクトのポインターを取得します。
| SidString | LPWSTR | in | セキュリティプリンシパルの SID をテキスト形式で含む文字列。これは、ConvertStringSidToSid 関数で変換できる有効な文字列 SID である必要があります。 |
| lOptions | INT | in | コンテキスト作成のオプション。 AZ_CLIENT_CONTEXT_SKIP_GROUP を指定した場合、SidString パラメーターで指定した SID は必ずしも有効なユーザーアカウントである必要はありません。SID は検証されずにコンテキストの作成に使用されます。作成されたコンテキストには SID から作成されたことを示すフラグが設定され、SID 文字列はクライアント名フィールドに格納され、ドメイン名フィールドは空になります。クライアントコンテキストの作成にトークングループは使用されません。AZ_CLIENT_CONTEXT_SKIP_GROUP を指定した場合、Lightweight Directory Access Protocol (LDAP) クエリグループはサポートされません。アカウントは Active Directory で検証されないため、UserSamCompat などのクライアントコンテキストのユーザー情報プロパティは有効ではなくなり、アクセスすると ERROR_INVALID_HANDLE を返します。IAzClientContext の RoleForAccessCheck プロパティおよび AccessCheck メソッドは、アクセスチェックに使用するロールを指定するために引き続き使用できます。IAzClientContext の GetRoles メソッドも、特定のスコープ内でコンテキストに割り当てられたロールを列挙するために引き続き使用できます。 AZ_CLIENT_CONTEXT_SKIP_GROUP を指定しない場合、SID は有効なユーザーアカウントを表している必要があります。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。このパラメーターには、次のいずれかの値を指定できます。 |
| ppClientContext | IAzClientContext** | out | 返される IAzClientContext オブジェクトへのポインターへのポインター。 |
戻り値
関数が成功した場合、S_OK を返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
解説(Remarks)
可能であれば、InitializeClientContextFromStringSid ではなく InitializeClientContextFromToken 関数を呼び出してください。InitializeClientContextFromStringSid は、クライアントが実際にログオンしていた場合にログオントークンから得られる情報を取得しようとします。実際のログオントークンには、ログオンの種類やログオンプロパティなどのより多くの情報が含まれ、ログオンに使用された認証パッケージの動作が反映されます。InitializeClientContextFromToken によって作成されるクライアントコンテキストはログオントークンを使用するため、InitializeClientContextFromStringSid によって作成されるクライアントコンテキストよりも完全で正確です。
IAzApplication::PolicyAdministratorsName プロパティは、ポリシー管理者として機能するプリンシパルのアカウント名を取得します。
| pvarAdmins | VARIANT* | out | ポリシー管理者のアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
IAzApplication::PolicyReadersName プロパティは、ポリシー閲覧者として機能するプリンシパルのアカウント名を取得します。
| pvarReaders | VARIANT* | out | ポリシー読み取り者のアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
JScript では、返された SAFEARRAY を JScript の Array オブジェクトに変換する必要があります。
指定したアカウント名を、ポリシー管理者として機能するプリンシパルの一覧に追加します。(IAzApplication.AddPolicyAdministratorName)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、ポリシー管理者として機能するプリンシパルの一覧から削除します。(IAzApplication.DeletePolicyAdministratorName)
| bstrAdmin | LPWSTR | in | ポリシー管理者の一覧から削除するアカウント名。アカウント名は、ユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com")、または "ExampleDomain\UserName" 形式のいずれかを使用できます。ドメインが "ExampleDomain\UserName" 形式で指定されていない場合は、ドメインの取得のために LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー管理者は、次のタスクを実行できます。
- オブジェクトの読み取り
- オブジェクトへの属性の書き込み
- オブジェクトの子オブジェクトの属性の読み取り
- オブジェクトの子オブジェクトへの属性の書き込み
- オブジェクトの削除
- オブジェクトの子オブジェクトの削除
- オブジェクトの子オブジェクトの作成
指定したアカウント名を、ポリシー閲覧者として機能するプリンシパルの一覧に追加します。(IAzApplication.AddPolicyReaderName)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧をアカウント名形式で表示するには、PolicyReadersName プロパティを使用します。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、ポリシー閲覧者として機能するプリンシパルの一覧から削除します。(IAzApplication.DeletePolicyReaderName)
| bstrReader | LPWSTR | in | ポリシー閲覧者の一覧から削除するアカウント名。アカウント名は、ユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com")、または "ExampleDomain\UserName" 形式のいずれかを使用できます。ドメインが "ExampleDomain\UserName" 形式で指定されていない場合は、ドメインの取得のために LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
オブジェクトのポリシー閲覧者は、そのオブジェクトおよびその子オブジェクトの属性を読み取ることができます。また、ポリシーを使用することもできます。たとえば、AccessCheck メソッドを呼び出せます。閲覧者は、オブジェクトやその子オブジェクトを変更することはできません。
ポリシー閲覧者の一覧をアカウント名形式で表示するには、PolicyReadersName プロパティを使用します。
IAzApplication の DelegatedPolicyUsersName プロパティは、委任ポリシーユーザーとして機能するプリンシパルのアカウント名を取得します。
| pvarDelegatedPolicyUsers | VARIANT* | out | 委任ポリシーユーザーのアカウント名の配列を格納した VARIANT を受け取るポインタである。 |
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
指定したアカウント名を、委任ポリシーユーザーとして機能するプリンシパルの一覧に追加します。(IAzApplication.AddDelegatedPolicyUserName)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧に追加するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
それ以外の HRESULT 値は、操作が失敗したことを示します。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
このメソッドによる変更を永続化するには、Submit メソッドを呼び出す必要があります。
指定したアカウント名を、委任ポリシーユーザーとして機能するプリンシパルの一覧から削除します。(IAzApplication.DeleteDelegatedPolicyUserName)
| bstrDelegatedPolicyUser | LPWSTR | in | 委任ポリシーユーザーの一覧から削除するアカウント名。アカウント名はユーザープリンシパル名 (UPN) 形式 (例: "someone@example.com") である必要があります。ドメインの取得には LookupAccountName 関数が呼び出されます。 |
| varReserved | VARIANT | in | 将来の使用のために予約されています。 |
戻り値
メソッドが成功した場合、S_OK を返します。
それ以外の HRESULT 値は、操作が失敗したことを示します。XML ストアに対してこのメソッドを呼び出そうとすると、E_INVALIDARG が返されます。
解説(Remarks)
委任ポリシーユーザーとは、IAzApplication オブジェクトのポリシー管理者が委任されたオブジェクトを管理するために使用するポリシーデータのサブセットを、読み取ることが許可されたプリンシパルです。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IAzApplication "{987BC7C7-B813-4D27-BEDE-6BA5AE867E95}" #usecom global IAzApplication IID_IAzApplication "{}" #comfunc global IAzApplication_get_Name 7 var #comfunc global IAzApplication_put_Name 8 wstr #comfunc global IAzApplication_get_Description 9 var #comfunc global IAzApplication_put_Description 10 wstr #comfunc global IAzApplication_get_ApplicationData 11 var #comfunc global IAzApplication_put_ApplicationData 12 wstr #comfunc global IAzApplication_get_AuthzInterfaceClsid 13 var #comfunc global IAzApplication_put_AuthzInterfaceClsid 14 wstr #comfunc global IAzApplication_get_Version 15 var #comfunc global IAzApplication_put_Version 16 wstr #comfunc global IAzApplication_get_GenerateAudits 17 var #comfunc global IAzApplication_put_GenerateAudits 18 int #comfunc global IAzApplication_get_ApplyStoreSacl 19 var #comfunc global IAzApplication_put_ApplyStoreSacl 20 int #comfunc global IAzApplication_get_Writable 21 var #comfunc global IAzApplication_GetProperty 22 int,int,var #comfunc global IAzApplication_SetProperty 23 int,int,int #comfunc global IAzApplication_get_PolicyAdministrators 24 var #comfunc global IAzApplication_get_PolicyReaders 25 var #comfunc global IAzApplication_AddPolicyAdministrator 26 wstr,int #comfunc global IAzApplication_DeletePolicyAdministrator 27 wstr,int #comfunc global IAzApplication_AddPolicyReader 28 wstr,int #comfunc global IAzApplication_DeletePolicyReader 29 wstr,int #comfunc global IAzApplication_get_Scopes 30 sptr #comfunc global IAzApplication_OpenScope 31 wstr,int,sptr #comfunc global IAzApplication_CreateScope 32 wstr,int,sptr #comfunc global IAzApplication_DeleteScope 33 wstr,int #comfunc global IAzApplication_get_Operations 34 sptr #comfunc global IAzApplication_OpenOperation 35 wstr,int,sptr #comfunc global IAzApplication_CreateOperation 36 wstr,int,sptr #comfunc global IAzApplication_DeleteOperation 37 wstr,int #comfunc global IAzApplication_get_Tasks 38 sptr #comfunc global IAzApplication_OpenTask 39 wstr,int,sptr #comfunc global IAzApplication_CreateTask 40 wstr,int,sptr #comfunc global IAzApplication_DeleteTask 41 wstr,int #comfunc global IAzApplication_get_ApplicationGroups 42 sptr #comfunc global IAzApplication_OpenApplicationGroup 43 wstr,int,sptr #comfunc global IAzApplication_CreateApplicationGroup 44 wstr,int,sptr #comfunc global IAzApplication_DeleteApplicationGroup 45 wstr,int #comfunc global IAzApplication_get_Roles 46 sptr #comfunc global IAzApplication_OpenRole 47 wstr,int,sptr #comfunc global IAzApplication_CreateRole 48 wstr,int,sptr #comfunc global IAzApplication_DeleteRole 49 wstr,int #comfunc global IAzApplication_InitializeClientContextFromToken 50 int64,int,sptr #comfunc global IAzApplication_AddPropertyItem 51 int,int,int #comfunc global IAzApplication_DeletePropertyItem 52 int,int,int #comfunc global IAzApplication_Submit 53 int,int #comfunc global IAzApplication_InitializeClientContextFromName 54 wstr,wstr,int,sptr #comfunc global IAzApplication_get_DelegatedPolicyUsers 55 var #comfunc global IAzApplication_AddDelegatedPolicyUser 56 wstr,int #comfunc global IAzApplication_DeleteDelegatedPolicyUser 57 wstr,int #comfunc global IAzApplication_InitializeClientContextFromStringSid 58 wstr,int,int,sptr #comfunc global IAzApplication_get_PolicyAdministratorsName 59 var #comfunc global IAzApplication_get_PolicyReadersName 60 var #comfunc global IAzApplication_AddPolicyAdministratorName 61 wstr,int #comfunc global IAzApplication_DeletePolicyAdministratorName 62 wstr,int #comfunc global IAzApplication_AddPolicyReaderName 63 wstr,int #comfunc global IAzApplication_DeletePolicyReaderName 64 wstr,int #comfunc global IAzApplication_get_DelegatedPolicyUsersName 65 var #comfunc global IAzApplication_AddDelegatedPolicyUserName 66 wstr,int #comfunc global IAzApplication_DeleteDelegatedPolicyUserName 67 wstr,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IAzApplication "{987BC7C7-B813-4D27-BEDE-6BA5AE867E95}" #usecom global IAzApplication IID_IAzApplication "{}" #comfunc global IAzApplication_get_Name 7 sptr #comfunc global IAzApplication_put_Name 8 wstr #comfunc global IAzApplication_get_Description 9 sptr #comfunc global IAzApplication_put_Description 10 wstr #comfunc global IAzApplication_get_ApplicationData 11 sptr #comfunc global IAzApplication_put_ApplicationData 12 wstr #comfunc global IAzApplication_get_AuthzInterfaceClsid 13 sptr #comfunc global IAzApplication_put_AuthzInterfaceClsid 14 wstr #comfunc global IAzApplication_get_Version 15 sptr #comfunc global IAzApplication_put_Version 16 wstr #comfunc global IAzApplication_get_GenerateAudits 17 sptr #comfunc global IAzApplication_put_GenerateAudits 18 int #comfunc global IAzApplication_get_ApplyStoreSacl 19 sptr #comfunc global IAzApplication_put_ApplyStoreSacl 20 int #comfunc global IAzApplication_get_Writable 21 sptr #comfunc global IAzApplication_GetProperty 22 int,int,sptr #comfunc global IAzApplication_SetProperty 23 int,int,int #comfunc global IAzApplication_get_PolicyAdministrators 24 sptr #comfunc global IAzApplication_get_PolicyReaders 25 sptr #comfunc global IAzApplication_AddPolicyAdministrator 26 wstr,int #comfunc global IAzApplication_DeletePolicyAdministrator 27 wstr,int #comfunc global IAzApplication_AddPolicyReader 28 wstr,int #comfunc global IAzApplication_DeletePolicyReader 29 wstr,int #comfunc global IAzApplication_get_Scopes 30 sptr #comfunc global IAzApplication_OpenScope 31 wstr,int,sptr #comfunc global IAzApplication_CreateScope 32 wstr,int,sptr #comfunc global IAzApplication_DeleteScope 33 wstr,int #comfunc global IAzApplication_get_Operations 34 sptr #comfunc global IAzApplication_OpenOperation 35 wstr,int,sptr #comfunc global IAzApplication_CreateOperation 36 wstr,int,sptr #comfunc global IAzApplication_DeleteOperation 37 wstr,int #comfunc global IAzApplication_get_Tasks 38 sptr #comfunc global IAzApplication_OpenTask 39 wstr,int,sptr #comfunc global IAzApplication_CreateTask 40 wstr,int,sptr #comfunc global IAzApplication_DeleteTask 41 wstr,int #comfunc global IAzApplication_get_ApplicationGroups 42 sptr #comfunc global IAzApplication_OpenApplicationGroup 43 wstr,int,sptr #comfunc global IAzApplication_CreateApplicationGroup 44 wstr,int,sptr #comfunc global IAzApplication_DeleteApplicationGroup 45 wstr,int #comfunc global IAzApplication_get_Roles 46 sptr #comfunc global IAzApplication_OpenRole 47 wstr,int,sptr #comfunc global IAzApplication_CreateRole 48 wstr,int,sptr #comfunc global IAzApplication_DeleteRole 49 wstr,int #comfunc global IAzApplication_InitializeClientContextFromToken 50 int64,int,sptr #comfunc global IAzApplication_AddPropertyItem 51 int,int,int #comfunc global IAzApplication_DeletePropertyItem 52 int,int,int #comfunc global IAzApplication_Submit 53 int,int #comfunc global IAzApplication_InitializeClientContextFromName 54 wstr,wstr,int,sptr #comfunc global IAzApplication_get_DelegatedPolicyUsers 55 sptr #comfunc global IAzApplication_AddDelegatedPolicyUser 56 wstr,int #comfunc global IAzApplication_DeleteDelegatedPolicyUser 57 wstr,int #comfunc global IAzApplication_InitializeClientContextFromStringSid 58 wstr,int,int,sptr #comfunc global IAzApplication_get_PolicyAdministratorsName 59 sptr #comfunc global IAzApplication_get_PolicyReadersName 60 sptr #comfunc global IAzApplication_AddPolicyAdministratorName 61 wstr,int #comfunc global IAzApplication_DeletePolicyAdministratorName 62 wstr,int #comfunc global IAzApplication_AddPolicyReaderName 63 wstr,int #comfunc global IAzApplication_DeletePolicyReaderName 64 wstr,int #comfunc global IAzApplication_get_DelegatedPolicyUsersName 65 sptr #comfunc global IAzApplication_AddDelegatedPolicyUserName 66 wstr,int #comfunc global IAzApplication_DeleteDelegatedPolicyUserName 67 wstr,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。