91 lines
2.3 KiB
C
91 lines
2.3 KiB
C
|
// DSQuery.h : Declaration of the CDSQuery object
|
||
|
// this is an internal helper object only, not exposed
|
||
|
//
|
||
|
//+-------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 1992 - 1999
|
||
|
//
|
||
|
// File: DSQuery.h
|
||
|
//
|
||
|
// Contents: Query object for DS snapin
|
||
|
//
|
||
|
// History: 04-dec-96 jimharr Created
|
||
|
//
|
||
|
//--------------------------------------------------------------------------
|
||
|
|
||
|
|
||
|
#ifndef __DSQUERY_H__
|
||
|
#define __DSQUERY_H__
|
||
|
|
||
|
#include "dscmn.h" // DSPROP_BSTR_BLOCK
|
||
|
|
||
|
// this used to be 256, we dropped it to reduce latency on first page
|
||
|
// retrieval.
|
||
|
#define QUERY_PAGESIZE 50
|
||
|
|
||
|
|
||
|
#define CMD_OPTIONS 2
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// CDSSearch
|
||
|
|
||
|
class CDSSearch
|
||
|
{
|
||
|
public:
|
||
|
CDSSearch();
|
||
|
CDSSearch(CDSCache * pCache, CDSComponentData * pCD);
|
||
|
~CDSSearch();
|
||
|
|
||
|
// INTERFACES
|
||
|
public:
|
||
|
HRESULT Init(IDirectorySearch * pObj);
|
||
|
HRESULT Init(LPCWSTR lpszObjectPath);
|
||
|
HRESULT DoQuery();
|
||
|
HRESULT GetNextRow ();
|
||
|
HRESULT GetColumn(LPWSTR Attribute,
|
||
|
PADS_SEARCH_COLUMN pColumnData);
|
||
|
HRESULT FreeColumn(PADS_SEARCH_COLUMN pColumnData) {
|
||
|
return m_pObj->FreeColumn(pColumnData);
|
||
|
};
|
||
|
HRESULT SetCookieFromData (CDSCookie* pCookie,
|
||
|
CDSColumnSet* pColumnSet);
|
||
|
HRESULT SetCookieFromData (CDSCookie* pCookie,
|
||
|
CPathCracker& specialPerformancePathCracker,
|
||
|
CDSColumnSet* pColumnSet);
|
||
|
HRESULT SetAttributeList (LPTSTR *pszAttribs, INT cAttrs);
|
||
|
HRESULT SetAttributeListForContainerClass ( CDSColumnSet* pColumnSet);
|
||
|
HRESULT SetSearchScope (ADS_SCOPEENUM scope);
|
||
|
HRESULT SetFilterString (LPWSTR pszFilter) {
|
||
|
m_pwszFilter = pszFilter;
|
||
|
return S_OK;
|
||
|
};
|
||
|
|
||
|
//Attributes
|
||
|
public:
|
||
|
IDirectorySearch * m_pObj;
|
||
|
ADS_SEARCH_HANDLE m_SearchHandle;
|
||
|
|
||
|
protected:
|
||
|
LPWSTR m_pwszFilter;
|
||
|
DSPROP_BSTR_BLOCK m_pszAttribs;
|
||
|
CDSCache * m_pCache;
|
||
|
CDSComponentData * m_pCD;
|
||
|
ADS_SCOPEENUM m_scope;
|
||
|
|
||
|
private:
|
||
|
void _Reset();
|
||
|
BOOL m_bInitialized;
|
||
|
|
||
|
// JonN 6/29/99: must do extra work for container class nTFRSMember
|
||
|
CString m_strContainerClassName;
|
||
|
CMapStringToString m_mapMemberToComputer;
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
#endif //__DSQUERY_H__
|
||
|
|
||
|
|