blob: 7f826154f95b27e1326e417f2f7d4240239914e6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#pragma once
#include "resource.h"
#include "WpdServiceSampleDriver.h"
class ATL_NO_VTABLE CDriver :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CDriver, &CLSID_WpdServiceSampleDriver>,
public IDriverEntry,
public IObjectCleanup
{
public:
CDriver();
DECLARE_REGISTRY_RESOURCEID(IDR_WpdServiceSampleDriver)
DECLARE_NOT_AGGREGATABLE(CDriver)
BEGIN_COM_MAP(CDriver)
COM_INTERFACE_ENTRY(IDriverEntry)
END_COM_MAP()
public:
//
// IDriverEntry
//
STDMETHOD (OnInitialize)(
_In_ IWDFDriver* pDriver
);
STDMETHOD (OnDeviceAdd)(
_In_ IWDFDriver* pDriver,
_In_ IWDFDeviceInitialize* pDeviceInit
);
STDMETHOD_ (void, OnDeinitialize)(
_In_ IWDFDriver* pDriver
);
//
// IObjectCleanup
//
STDMETHOD_ (void, OnCleanup)(
_In_ IWDFObject* pWdfObject
);
};
OBJECT_ENTRY_AUTO(__uuidof(WpdServiceSampleDriver), CDriver)
|