ADsPropCreateNotifyObj 함수(adsprop.h)
ADsPropCreateNotifyObj 함수는 Active Directory Domain Services 속성 시트 확장에서 사용할 알림 개체를 만들거나 가져오는 데 사용됩니다.
구문
HRESULT ADsPropCreateNotifyObj(
[in] LPDATAOBJECT pAppThdDataObj,
[in] PWSTR pwzADsObjName,
[out] HWND *phNotifyObj
);
매개 변수
[in] pAppThdDataObj
속성 페이지가 적용되는 디렉터리 개체를 나타내는 IDataObject 개체에 대한 포인터입니다. 속성 페이지 IShellExtInit::Initialize 메서드에 전달된 IDataObject입니다.
[in] pwzADsObjName
pAppThdDataObj로 표시되는 IDataObject에서 CFSTR_DSOBJECTNAMES 클립보드 형식에 대해 IDataObject::GetData 메서드를 호출하여 얻은 Active Directory Domain Services 개체 이름입니다.
[out] phNotifyObj
알림 개체의 핸들을 수신하는 HWND 값에 대한 포인터입니다.
반환 값
성공하면 S_OK 반환하고, 그렇지 않으면 OLE 정의 오류 값을 반환합니다.
설명
ADsPropCreateNotifyObj 함수는 Active Directory Domain Services 속성 시트 확장의 구현에 사용됩니다. 확장은 먼저 IDataObject::GetData를 호출하여 IShellExtInit::Initialize에 전달된 IDataObject 인터페이스에서 CFSTR_DSOBJECTNAMES 데이터를 요청해야 합니다. ADsPropCreateNotifyObj를 호출하는 데 필요한 데이터 개체 및 개체 이름을 제공합니다.
알림 개체가 더 이상 필요하지 않으면 WM_ADSPROP_NOTIFY_EXIT 메시지가 알림 개체로 전송됩니다. 이로 인해 알림 개체가 자체 삭제됩니다. WM_ADSPROP_NOTIFY_EXIT 메시지가 전송되면 알림 개체 핸들이 잘못된 것으로 간주되어야 합니다.
예제
다음 C++ 예제에서는 ADsPropCreateNotifyObj 함수를 사용하는 방법을 보여 줍니다.
HWND CreateADsNotificationObject(IDataObject *pDataObject)
{
STGMEDIUM stm;
FORMATETC fe;
HRESULT hr;
HWND hwndNotifyObject = NULL;
if(NULL == pDataObject)
{
return NULL;
}
fe.cfFormat = RegisterClipboardFormat(CFSTR_DSOBJECTNAMES);
if(0 == fe.cfFormat)
{
return NULL;
}
fe.ptd = NULL;
fe.dwAspect = DVASPECT_CONTENT;
fe.lindex = -1;
fe.tymed = TYMED_HGLOBAL;
hr = pDataObject->GetData(&fe, &stm);
if(SUCCEEDED(hr))
{
LPDSOBJECTNAMES pdson =
(LPDSOBJECTNAMES)GlobalLock(stm.hGlobal);
if(pdson)
{
LPWSTR pwszName = (LPWSTR)((LPBYTE)pdson +
pdson->aObjects[0].offsetName);
hr = ADsPropCreateNotifyObj(pDataObject,
pwszName,
&hwndNotifyObject);
GlobalUnlock(stm.hGlobal);
}
ReleaseStgMedium(&stm);
}
return hwndNotifyObject;
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
지원되는 최소 서버 | Windows Server 2008 |
대상 플랫폼 | Windows |
헤더 | adsprop.h |
라이브러리 | Dsprop.lib |
DLL | Dsprop.dll |