|
|
///////////////////////////////////////////////////////////////////////////////
// This file contains the component server code. The FactoryDataArray contains
// the components that can be served.
//
// The following array contains the data used by CFactory to create components.
// Each element in the array contains the CLSID, the pointer to the creation
// function, and the name of the component to place in the Registry.
#include "factdata.h"
#include "fact.h"
#include "dtct.h"
#include "devinfo.h"
#include "settings.h"
#include "cstmprop.h"
#include "regnotif.h"
const CLSID APPID_ShellHWDetection = { /* b1b9cbb2-b198-47e2-8260-9fd629a2b2ec */ 0xb1b9cbb2, 0xb198, 0x47e2, {0x82, 0x60, 0x9f, 0xd6, 0x29, 0xa2, 0xb2, 0xec} };
CFactoryData g_FactoryDataArray[] = { { &CLSID_HWEventDetector, CHWEventDetector::UnkCreateInstance, L"Shell.HWEventDetector", // Friendly name
L"Shell.HWEventDetector.1", // ProgID
L"Shell.HWEventDetector", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
// this is not a COM server, so following are N/A
NULL, // CoRegisterClassObject context
NULL, // CoRegisterClassObject flags
NULL, // ServiceName
NULL, }, { &CLSID_HWEventSettings, CAutoplayHandler::UnkCreateInstance, L"AutoplayHandler", // Friendly name
L"AutoplayHandler.1", // ProgID
L"AutoplayHandler", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, L"ShellHWDetection", &APPID_ShellHWDetection, }, { &CLSID_AutoplayHandlerProperties, CAutoplayHandlerProperties::UnkCreateInstance, L"AutoplayHandlerProperties", // Friendly name
L"AutoplayHandlerProperties.1", // ProgID
L"AutoplayHandlerProperties", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, L"ShellHWDetection", &APPID_ShellHWDetection, }, { &CLSID_HWDevice, CHWDevice::UnkCreateInstance, L"HWDevice", // Friendly name
L"HWDevice.1", // ProgID
L"HWDevice", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, L"ShellHWDetection", &APPID_ShellHWDetection, }, { &CLSID_HardwareDevices, CHardwareDevices::UnkCreateInstance, L"HardwareDeviceNotif", // Friendly name
L"HardwareDeviceNotif.1", // ProgID
L"HardwareDeviceNotif", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, L"ShellHWDetection", &APPID_ShellHWDetection, }, { &CLSID_HWDeviceCustomProperties, CHWDeviceCustomProperties::UnkCreateInstance, L"HWDeviceCustomProperties", // Friendly name
L"HWDeviceCustomProperties.1", // ProgID
L"HWDeviceCustomProperties", // Version-independent
THREADINGMODEL_FREE, // ThreadingModel == Free
CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, L"ShellHWDetection", &APPID_ShellHWDetection, }, };
const CFactoryData* CCOMBaseFactory::_pDLLFactoryData = g_FactoryDataArray;
const DWORD CCOMBaseFactory::_cDLLFactoryData = sizeof(g_FactoryDataArray) / sizeof(g_FactoryDataArray[0]);
|