プロバイダー コンポーネントの例では、ネイティブ オペレーティング システムに直接アクセスする API を表す関数がRegdsapi.cpp。 プロバイダー コンポーネントの例では、そのディレクトリ サービスがレジストリに実装されています。 独自のディレクトリ サービスにアクセスするプロバイダーを作成するには、この API の独自の実装を作成します。 サポートされている関数を次の表に示します。
| 方式 | 形容 |
|---|---|
| SampleDSOpenObject の | このオブジェクトを名前で開きます。 スキーマ クラスの型パラメーターが NULL 場合は、見つかった型を入力します。 オブジェクトのハンドルを取得します。 |
| SampleDSCloseObject の | SampleDSOpenObject によって取得されたハンドル使用します。 |
| SampleDSRDNEnum の | コンテナー オブジェクトからの相対識別名 (RDN) の列挙を管理する列挙子オブジェクトのハンドルを取得します。 |
| SampleDSNextRDN の | SampleDSRDNEnum 取得したハンドルを使用して、このコンテナー オブジェクトから次の相対識別名を取得します。 |
| SampleDSFreeEnum の | SampleDSRDNEnum で割り当てられた列挙子オブジェクト解放します。 |
| SampleDSModifyObject の | オブジェクトのハンドルと属性とその値のリストを指定して、ディレクトリ サービス内のオブジェクトのプロパティを変更します。 |
| SampleDSReadObject の | ディレクトリ サービスからオブジェクトのプロパティを読み取ります。 ネイティブ ストレージの構文を適切な ADS 構文値にマップします。 それに応じて、複数の値を持つプロパティを処理します。 |
| SampleDSGetPropertyDefinition の | スキーマで、この種類のスキーマ クラス オブジェクトのすべてのプロパティ定義とその属性を検索します。 |
| SampleDSGetPropertyDefinition の | スキーマで、このプロパティとその属性を名前で検索します。 |
| SampleDSFreePropertyDefinition の | GetPropertyDefinitionによって割り当てられた空きメモリ。 |
| SampleDSGetTypeText の | テキスト形式でオブジェクトのスキーマ クラス型を取得します。 |
| SampleDSGetType の | オブジェクトのスキーマ クラス型を取得します。 |
| SampleDSGetPropertyInfo の | スキーマ クラス オブジェクトのハンドルとプロパティ名を指定して、構文などのプロパティ情報を取得します。 |
| FreeList | LPWSTR_LISTによって使用されるメモリを解放します。 |
| SampleDSGetClassDefinition の | スキーマから、すべてのスキーマ クラス定義とその関連データのセットを取得します。 |
| SampleDSGetClassDefinition の | スキーマ内の特定のスキーマ クラスに関するデータを取得します。 |
| SampleDSGetClassInfo の | スキーマ クラスの名前を指定すると、必須プロパティなど、関連付けられているデータを検索できます。 |
| SampleDSAddObject の | ディレクトリ サービスにオブジェクトを追加します。 |
| SampleDSRemoveObject の | ディレクトリ サービスからオブジェクトを削除します。 |
| SampleDSCreateBuffer の | 属性データと操作データのメモリ バッファーを作成します。 |
| SampleDSFreeBuffer の | SampleDSCreateBuffer で作成されたバッファー解放します。 |