次の方法で共有


ADS_ESCAPE_MODE_ENUM列挙 (iads.h)

ADS_ESCAPE_MODE_ENUM列挙は、ディレクトリ パスにエスケープ文字を表示する方法を指定します。

構文

typedef enum __MIDL___MIDL_itf_ads_0001_0078_0004 {
  ADS_ESCAPEDMODE_DEFAULT = 1,
  ADS_ESCAPEDMODE_ON = 2,
  ADS_ESCAPEDMODE_OFF = 3,
  ADS_ESCAPEDMODE_OFF_EX = 4
} ADS_ESCAPE_MODE_ENUM;

定数

 
ADS_ESCAPEDMODE_DEFAULT
値: 1
既定のエスケープ モードには、エスケープ モードを指定するための便利なオプションが用意されています。 選択した形式に適した最小限のエスケープ操作の効果があります。 したがって、既定の動作は、ディレクトリ パスの取得に使用 ADS_FORMAT_ENUM 値によって異なります。










































取得したパスの形式既定のエスケープ モード
ADS_FORMAT_X500ADS_ESCAPEDMODE_ON
ADS_FORMAT_X500_NO_SERVERADS_ESCAPEDMODE_ON
ADS_FORMAT_WINDOWSADS_ESCAPEDMODE_ON
ADS_FORMAT_WINDOWS_NO_SERVERADS_ESCAPEDMODE_ON
ADS_FORMAT_X500_DNADS_ESCAPEDMODE_OFF
ADS_FORMAT_X500_PARENTADS_ESCAPEDMODE_OFF
ADS_FORMAT_WINDOWS_DNADS_ESCAPEDMODE_OFF
ADS_FORMAT_WINDOWS_PARENTADS_ESCAPEDMODE_OFF
ADS_FORMAT_LEAFADS_ESCAPEDMODE_ON
ADS_ESCAPEDMODE_ON
値: 2
すべての特殊文字はエスケープ形式で表示されます。たとえば、"CN=date=yy/mm/dd,weekday" はそのまま表示されます。
ADS_ESCAPEDMODE_OFF
値: 3
ADSI 特殊文字はエスケープされていない形式で表示されます。たとえば、"CN=date=yy/mm/dd,weekday" は "CN=date=yy/mm/dd,weekday" と表示されます。
ADS_ESCAPEDMODE_OFF_EX
値: 4
ADSI および LDAP 特殊文字はエスケープされていない形式で表示されます。たとえば、"CN=date=yy/mm/dd,weekday" は "CN=date=yy/mm/dd,weekday" と表示されます。

注釈

意図しない目的で使用する場合は、特殊文字をエスケープする必要があります。 たとえば、LDAP 特殊文字、コンマ (、) と等号 (=) は、識別名 "CN=user,CN=users,DC=Fabrikam,DC=com" のフィールド区切り記号として使用されます。 属性値でこのような特殊文字 ("CN=users,last name=Smith" など) を使用する場合は、次に示すように、これらの特殊文字をエスケープする必要があります。 これにより、Active Directory などの LDAP 準拠ディレクトリでパスが正しく解析されるようになります。 ただし、エスケープされたパス文字列は、ディスプレイではわかりやすいように見えない場合があります。 この場合、パスをエスケープされていない文字列 "CN=users,last name=Smith" として示すように、 ADS_ESCAPE_MODE_ENUM を設定できます。

同様に、ADSI 特殊文字のスラッシュ (/) は、ADSI 固有の要素 "LDAP://server/CN=Jeff Smith,CN=Users,DC=Fabrikam,DC=com" を区切ります。 他の目的で使用する場合はエスケープする必要がありますが(例: "LDAP://server/CN=Jeff Smith/California,CN=Users,DC=Fabrikam,DC=com")。 ADS_ESCAPE_MODE_ENUM オプションを選択すると、"LDAP://server/CN=Jeff Smith/California,CN=Users,DC=Fabrikam,DC=com" という人間が判読できる形式でエスケープされた文字列を表示できます。

現在、スラッシュ (/) は ADSI 特殊文字のみです。 ADSI エスケープとエスケープ解除は ADSI 特殊文字にのみ適用されます。 この操作は LDAP 特殊文字には影響しません。つまり、エスケープもエスケープもされません。 LDAP で定義された特殊文字の詳細と一覧については、「 LDAP 特殊文字」を参照してください。

エスケープされていないパス文字列を表示するには、 IADsPathname インターフェイスとそのメソッドを使用します。 他のすべての ADSI API は、エスケープされたパス文字列を返します。

正しい動作を得るために、ADSI 特殊文字をエスケープする前に LDAP 特殊文字をエスケープする必要があります。 IADsPathname インターフェイスは、正しいシーケンス内の文字をエスケープします。

メモ VBScript はタイプ ライブラリからデータを読み取ることができないため、Visual Basic Scripting Edition (VBScript) アプリケーションはシンボリックを上記で定義した定数として認識しません。 代わりに、数値定数を使用して、VBScript アプリケーションで適切なフラグを設定します。 シンボリック定数を使用するには、ここで行うとおり、このような定数の明示的な宣言を記述します。
 

要件

要件
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
Header iads.h

こちらもご覧ください

ADSI 列挙

ADS_FORMAT_ENUM

IADsPathname

LDAP ADsPath