83 lines
2.9 KiB
C
83 lines
2.9 KiB
C
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 2000.
|
||
|
//
|
||
|
// File: D E V I C E P E R S I S T E N C E M A N A G E R . H
|
||
|
//
|
||
|
// Contents: Persistence for UPnP device host registrar settings to registry
|
||
|
//
|
||
|
// Notes:
|
||
|
//
|
||
|
// Author: mbend 6 Sep 2000
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
|
||
|
#pragma once
|
||
|
#include "uhres.h" // main symbols
|
||
|
|
||
|
#include "hostp.h"
|
||
|
#include "UString.h"
|
||
|
|
||
|
// Typedefs
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////
|
||
|
// TestObject
|
||
|
class ATL_NO_VTABLE CDevicePersistenceManager :
|
||
|
public CComObjectRootEx<CComMultiThreadModel>,
|
||
|
public CComCoClass<CDevicePersistenceManager, &CLSID_UPnPDevicePersistenceManager>,
|
||
|
public IUPnPDevicePersistenceManager
|
||
|
{
|
||
|
public:
|
||
|
CDevicePersistenceManager();
|
||
|
~CDevicePersistenceManager();
|
||
|
|
||
|
DECLARE_REGISTRY_RESOURCEID(IDR_DEVICE_PERSISTENCE_MANAGER)
|
||
|
|
||
|
DECLARE_NOT_AGGREGATABLE(CDevicePersistenceManager)
|
||
|
BEGIN_COM_MAP(CDevicePersistenceManager)
|
||
|
COM_INTERFACE_ENTRY(IUPnPDevicePersistenceManager)
|
||
|
END_COM_MAP()
|
||
|
|
||
|
public:
|
||
|
// IUPnPDevicePersistenceManager methods
|
||
|
STDMETHOD(SavePhyisicalDevice)(
|
||
|
/*[in]*/ REFGUID guidPhysicalDeviceIdentifier,
|
||
|
/*[in, string]*/ const wchar_t * szProgIdDeviceControlClass,
|
||
|
/*[in, string]*/ const wchar_t * szInitString,
|
||
|
/*[in, string]*/ const wchar_t * szContainerId,
|
||
|
/*[in, string]*/ const wchar_t * szResourcePath,
|
||
|
/*[in]*/ long nLifeTime);
|
||
|
STDMETHOD(LookupPhysicalDevice)(
|
||
|
/*[in]*/ REFGUID guidPhysicalDeviceIdentifier,
|
||
|
/*[out, string]*/ wchar_t ** pszProgIdDeviceControlClass,
|
||
|
/*[out, string]*/ wchar_t ** pszInitString,
|
||
|
/*[out, string]*/ wchar_t ** pszContainerId,
|
||
|
/*[out, string]*/ wchar_t ** pszResourcePath,
|
||
|
/*[out]*/ long * pnLifeTime);
|
||
|
STDMETHOD(RemovePhysicalDevice)(
|
||
|
/*[in]*/ REFGUID guidPhysicalDeviceIdentifier);
|
||
|
STDMETHOD(GetPhysicalDevices)(
|
||
|
/*[out]*/ long * pnDevices,
|
||
|
/*[out, size_is(,*pnDevices)]*/
|
||
|
GUID ** parguidPhysicalDeviceIdentifiers);
|
||
|
STDMETHOD(SaveDeviceProvider)(
|
||
|
/*[in, string]*/ const wchar_t * szProviderName,
|
||
|
/*[in, string]*/ const wchar_t * szProgIdProviderClass,
|
||
|
/*[in, string]*/ const wchar_t * szInitString,
|
||
|
/*[in, string]*/ const wchar_t * szContainerId);
|
||
|
STDMETHOD(LookupDeviceProvider)(
|
||
|
/*[in, string]*/ const wchar_t * szProviderName,
|
||
|
/*[out, string]*/ wchar_t ** pszProgIdProviderClass,
|
||
|
/*[out, string]*/ wchar_t ** pszInitString,
|
||
|
/*[out, string]*/ wchar_t ** pszContainerId);
|
||
|
STDMETHOD(RemoveDeviceProvider)(
|
||
|
/*[in, string]*/ const wchar_t * szProviderName);
|
||
|
STDMETHOD(GetDeviceProviders)(
|
||
|
/*[out]*/ long * pnProviders,
|
||
|
/*[out, string, size_is(,*pnProviders,)]*/
|
||
|
wchar_t *** parszProviderNames);
|
||
|
private:
|
||
|
};
|
||
|
|