windows-nt/Source/XPSP1/NT/base/win32/fusion/installer/includes/applicationinfo.h
2020-09-26 16:20:57 +08:00

41 lines
886 B
C++

#pragma once
// note: Ids (defined in fusenet.idl) have to be in sync with eStringTableId in manifestimport.h
class CManifestApplicationInfo : public IManifestApplicationInfo
{
public:
// IUnknown methods
STDMETHODIMP QueryInterface(REFIID riid,void ** ppv);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
STDMETHOD(Set)(
/* in */ DWORD dwId,
/* in */ LPCOLESTR pwzProperty);
STDMETHOD(Get)(
/* in */ DWORD dwId,
/* out */ LPOLESTR *ppwzProperty,
/* out */ LPDWORD pccProperty);
CManifestApplicationInfo();
~CManifestApplicationInfo();
private:
struct ApplicationInfo
{
LPWSTR pwzProperty;
DWORD ccProperty;
};
DWORD _dwSig;
DWORD _cRef;
HRESULT _hr;
ApplicationInfo _ai[MAN_APPLICATION_MAX];
};