Metode Properti IADsPathname
Metode properti antarmuka IADsPathname mendapatkan atau mengatur properti EscapedMode . Untuk informasi selengkapnya, lihat Metode Properti Antarmuka.
Properti
-
EscapedMode
-
-
Jenis akses: Baca/tulis
-
Jenis data pembuatan skrip: Panjang
-
// C++ method syntax HRESULT get_EscapedMode( [out] long* retval ); HRESULT get_EscapedMode( [in] long* lnEscapedMode );
Periksa atau tentukan bagaimana karakter yang lolos ditangani dalam nama jalur. Untuk informasi selengkapnya dan opsi yang ditentukan, lihat ADS_ESCAPE_MODE_ENUM.
-
Keterangan
EscapedMode mewakili status. Anda dapat mengaktifkan atau menonaktifkannya, dengan mengaturnya ke ADS_ESCAPEDMODE_ON atau ADS_ESCAPEDMODE_OFF/ADS_ESCAPEDMODE_OFF_EX. Ketika diaktifkan, atau dinonaktifkan, semua pengambilan berikutnya menghasilkan string jalur yang lolos atau tidak terlewati.
Di ADSI hanya IADsPathname yang mampu membuka jalur. Semua antarmuka ADSI lainnya selalu mengembalikan jalur yang lolos. Status default EscapedMode ADS_ESCAPEDMODE_DEFAULT seperti yang didefinisikan dalam ADS_ESCAPE_MODE_ENUM.
Contoh
Contoh kode berikut menunjukkan cara menggunakan properti EscapedMode mengaktifkan/menonaktifkan pelepasan dari tiga karakter khusus berikut: "=",",", dan "/".
Dim path As New Pathname
path.Set "CN=joy\=ful\,\/*", ADS_SETTYPE_DN
path.EscapedMode = ADS_ESCAPEDMODE_ON
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS) ' All escaped, producing:
' "LDAP://CN=joy\=ful\,\/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS) ' Only "/" is unescaped:
' "LDAP://CN=joy\=ful\,/*"
path.EscapedMode = ADS_ESCAPEDMODE_OFF_EX
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS) ' All are unescaped:
' "LDAP://CN=joy=ful,/*"
path.Set "LDAP://CN=joy\=ful\,\/*", ADS_SETTYPE_FULL
path.EscapedMode = ADS_ESCAPEDMODE_ON
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy\=ful\,\/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy\=ful\,/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF_EX
MsgBox path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy=ful,/*"
Contoh kode berikut menunjukkan cara menggunakan properti EscapedMode mengaktifkan/menonaktifkan pelepasan dari tiga karakter khusus berikut: "=",",", dan "/".
<%
Dim path
const ADS_SETTYPE_FULL = 1
const ADS_SETTYPE_DN = 4
const ADS_FORMAT_WINDOWS = 1
const ADS_ESCAPEDMODE_ON = 2
const ADS_ESCAPEDMODE_OFF = 3
const ADS_ESCAPEDMODE_OFF_EX = 4
Set path = CreateObject("Pathname")
path.Set "CN=joy\=ful\,\/*", ADS_SETTYPE_DN
path.EscapedMode = ADS_ESCAPEDMODE_ON
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS)
' All escaped, producing: "LDAP://CN=joy\=ful\,\/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS)
' Only "/" is unescaped: "LDAP://CN=joy\=ful\,/*"
path.EscapedMode = ADS_ESCAPEDMODE_OFF_EX
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS) ' All are unescaped:
' "LDAP://CN=joy=ful,/*"
path.Set "LDAP://CN=joy\=ful\,\/*", ADS_SETTYPE_FULL
path.EscapedMode = ADS_ESCAPEDMODE_ON
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy\=ful\,\/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy\=ful\,/*"
path.EscapedMode = ADS_ESCAPEMODE_OFF_EX
Response.Write path.Retrieve(ADS_FORMAT_WINDOWS)
' Produces "LDAP://CN=joy=ful,/*"
%>
Contoh kode berikut menunjukkan cara bekerja dengan properti EscapedMode . Pemeriksaan kesalahan diabaikan.
IADsPathname *pPathname=NULL;
HRESULT hr;
hr = CoCreateInstance(CLSID_Pathname,
NULL,
CLSCTX_INPROC_SERVER,
IID_IADsPathname,
(void**)&pPathname);
if(FAILED(hr))
{
if(pPathname) pPathname->Release();
return NULL;
}
pPathname->AddRef();
hr = pPathname->Set(CComBSTR("LDAP://CN=joy/ful\/*"),
ADS_SETTYPE_FULL);
hr = pPathname->put_EscapedMode(ADS_ESCAPEDMODE_OFF);
hr = pPathname->Retrieve(ADS_FORMAT_WINDOWS_DN,&bstr);
printf("Unescaped path: %S\n",bstr);
// Producing "LDAP://CN=joy/ful/*"
SysFreeString(bstr);
hr = pPathname->put_EscapedMode(ADS_ESCAPEDMODE_ON);
hr = pPathname->Retrieve(ADS_FORMAT_WINDOWS_DN,&bstr);
printf("Escaped path: %S\n",bstr);
// Producing "LDAP://CN=joy/ful\/*"
SysFreeString(bstr);
// Set the path using ADS_SETTYPE_DN
hr = pPathname->Set(CComBSTR("CN=joy/ful\/*"), ADS_SETTYPE_DN);
hr = pPathname->put_EscapedMode(ADS_ESCAPEDMODE_OFF);
hr = pPathname->Retrieve(ADS_FORMAT_WINDOWS_DN,&bstr);
printf("Unescaped path: %S\n",bstr);
// Producing "LDAP://CN=joy/ful/*"
SysFreeString(bstr);
hr = pPathname->put_EscapedMode(ADS_ESCAPEDMODE_ON);
hr = pPathname->Retrieve(ADS_FORMAT_WINDOWS_DN,&bstr);
printf("Escaped path: %S\n",bstr);
// Producing "LDAP://CN=joy\/ful\/*"
SysFreeString(bstr);
hr = pPathname->Release();
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows Vista |
Server minimum yang didukung |
Windows Server 2008 |
Header |
|
DLL |
|
IID |
IID_IADsPathname didefinisikan sebagai D592AED4-F420-11D0-A36E-00C04FB950DC |