Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

53 lines
1.4 KiB

#pragma once
#include "resource.h"
#include "dccsink.h"
// {067B4B81-B1EC-489f-B111-940EBDC44EBE}
struct __declspec(uuid("067B4B81-B1EC-489f-B111-940EBDC44EBE")) RapiDevice;
class CRapiDevice :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CRapiDevice, &__uuidof(RapiDevice) >,
public IMDServiceProvider,
public IComponentAuthenticate
{
public:
HRESULT FinalConstruct();
void FinalRelease();
public:
DECLARE_REGISTRY_RESOURCEID(IDR_CEWMDM_REG)
BEGIN_COM_MAP(CRapiDevice)
COM_INTERFACE_ENTRY(IMDServiceProvider)
COM_INTERFACE_ENTRY(IComponentAuthenticate)
END_COM_MAP()
public:
//
// IMDServiceProvider
//
STDMETHOD( GetDeviceCount )( DWORD *pdwCount );
STDMETHOD( EnumDevices )( IMDSPEnumDevice ** ppEnumDevice );
//
// IComponentAuthenticate
//
STDMETHOD( SACAuth )( DWORD dwProtocolID,
DWORD dwPass,
BYTE *pbDataIn,
DWORD dwDataInLen,
BYTE **ppbDataOut,
DWORD *pdwDataOutLen);
STDMETHOD( SACGetProtocols )(DWORD **ppdwProtocols,
DWORD *pdwProtocolCount);
protected:
CComDccSink *m_pSink;
CComPtr<IDccManSink> m_spSink;
};
typedef CComObject<CRapiDevice> CComRapiDevice;