admin
base
com
developer
drivers
ds
adsi
dns
ds
edb500
ese98
inc
nameres
netapi
nlrepl
nw
published
safealloca
security
asn1
authz
azroles
base
common
cryptoapi
csps
dsrole
gina
inc
lib
ntmarta
passport
protocols
services
ca
capesnpn
celib
certadm
certcli
certclib
certdb
certenc
certif
certlib
certmmc
certprxy
certreq
certsrv
certview
attrib.cpp
attrib.h
certview.cpp
column.cpp
column.h
csview.h
csviewm.h
ext.cpp
ext.h
makefile
pch.cpp
row.cpp
row.h
sources
view.cpp
view.h
certweb
certwrap
docs
exit
genreq
hdrs
idl
include
initlib
nsrevchk
ocmsetup
policy
requests
tools
dirs
makefile.sdk
mkallstr.bat
msaudite.mc
scerpc
smartcrd
w32time
dirs
tools
winsafer
dirs
roadmap.txt
win32
xpress
dirs
project.mk
enduser
inetcore
inetsrv
loc
mergedcomponents
multimedia
net
printscan
public
published
sdktools
shell
termsrv
tools
windows
dirs
makefil0
111 lines
2.9 KiB
C++
111 lines
2.9 KiB
C++
//+--------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1996 - 1999
|
|
//
|
|
// File: column.h
|
|
//
|
|
// Contents: CertView implementation
|
|
//
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
// CEnumCERTVIEWCOLUMN::Open Flags:
|
|
// CVRC_COLUMN_* // enumerate schema, result columns or values
|
|
// CVRC_TABLE_* // specifies the DB table to enumerate
|
|
|
|
|
|
class CEnumCERTVIEWCOLUMN:
|
|
public IDispatchImpl<
|
|
IEnumCERTVIEWCOLUMN,
|
|
&IID_IEnumCERTVIEWCOLUMN,
|
|
&LIBID_CERTADMINLib>,
|
|
public ISupportErrorInfoImpl<&IID_IEnumCERTVIEWCOLUMN>,
|
|
public CComObjectRoot
|
|
// Not externally createable:
|
|
//public CComCoClass<CEnumCERTVIEWCOLUMN, &CLSID_CEnumCERTVIEWCOLUMN>
|
|
{
|
|
public:
|
|
CEnumCERTVIEWCOLUMN();
|
|
~CEnumCERTVIEWCOLUMN();
|
|
|
|
BEGIN_COM_MAP(CEnumCERTVIEWCOLUMN)
|
|
COM_INTERFACE_ENTRY(IDispatch)
|
|
COM_INTERFACE_ENTRY(ISupportErrorInfo)
|
|
COM_INTERFACE_ENTRY(IEnumCERTVIEWCOLUMN)
|
|
END_COM_MAP()
|
|
|
|
DECLARE_NOT_AGGREGATABLE(CEnumCERTVIEWCOLUMN)
|
|
// Remove the comment from the line above if you don't want your object to
|
|
// support aggregation. The default is to support it
|
|
|
|
#if 0 // Not externally createable:
|
|
DECLARE_REGISTRY(
|
|
CEnumCERTVIEWCOLUMN,
|
|
wszCLASS_EnumCERTVIEWCOLUMN TEXT(".1"),
|
|
wszCLASS_EnumCERTVIEWCOLUMN,
|
|
IDS_ENUMCERTVIEWCOLUMN_DESC,
|
|
THREADFLAGS_BOTH)
|
|
#endif
|
|
|
|
// IUnknown
|
|
STDMETHODIMP QueryInterface(const IID& iid, void **ppv);
|
|
ULONG STDMETHODCALLTYPE AddRef();
|
|
ULONG STDMETHODCALLTYPE Release();
|
|
|
|
// IEnumCERTVIEWCOLUMN
|
|
STDMETHOD(Next)(
|
|
/* [out, retval] */ LONG *pIndex);
|
|
|
|
STDMETHOD(GetName)(
|
|
/* [out, retval] */ BSTR *pstrOut);
|
|
|
|
STDMETHOD(GetDisplayName)(
|
|
/* [out, retval] */ BSTR *pstrOut);
|
|
|
|
STDMETHOD(GetType)(
|
|
/* [out, retval] */ LONG *pType);
|
|
|
|
STDMETHOD(IsIndexed)(
|
|
/* [out, retval] */ LONG *pIndexed);
|
|
|
|
STDMETHOD(GetMaxLength)(
|
|
/* [out, retval] */ LONG *pMaxLength);
|
|
|
|
STDMETHOD(GetValue)(
|
|
/* [in] */ LONG Flags,
|
|
/* [out, retval] */ VARIANT *pvarValue);
|
|
|
|
STDMETHOD(Skip)(
|
|
/* [in] */ LONG celt);
|
|
|
|
STDMETHOD(Reset)(VOID);
|
|
|
|
STDMETHOD(Clone)(
|
|
/* [out] */ IEnumCERTVIEWCOLUMN **ppenum);
|
|
|
|
// CEnumCERTVIEWCOLUMN
|
|
HRESULT Open(
|
|
IN LONG Flags,
|
|
IN LONG iRow,
|
|
IN ICertView *pvw,
|
|
OPTIONAL IN CERTTRANSDBRESULTROW const *prow);
|
|
|
|
private:
|
|
HRESULT _SetErrorInfo(
|
|
IN HRESULT hrError,
|
|
IN WCHAR const *pwszDescription);
|
|
|
|
ICertView *m_pvw;
|
|
CERTTRANSDBRESULTROW *m_prow;
|
|
LONG m_iRow;
|
|
LONG m_ielt;
|
|
LONG m_celt;
|
|
LONG m_Flags;
|
|
CERTDBCOLUMN const *m_pcol;
|
|
WCHAR const *m_pwszDisplayName;
|
|
|
|
// Reference count
|
|
long m_cRef;
|
|
};
|