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.
60 lines
1.7 KiB
60 lines
1.7 KiB
//=======================================================================
|
|
//
|
|
// Copyright (c) 2001 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// File: AUCltCatalog.h
|
|
//
|
|
// Creator: PeterWi
|
|
//
|
|
// Purpose: Client AU Catalog Definitions
|
|
//
|
|
//=======================================================================
|
|
|
|
#pragma once
|
|
#include "AUBaseCatalog.h"
|
|
#include "WrkThread.h"
|
|
//#include <iuprogress.h>
|
|
|
|
class CInstallCallback : public IProgressListener
|
|
{
|
|
public:
|
|
// IUnknown
|
|
STDMETHOD(QueryInterface)(REFIID riid, void **ppvObject);
|
|
STDMETHOD_(ULONG, AddRef)(void);
|
|
STDMETHOD_(ULONG, Release)(void);
|
|
|
|
// IProgressListener
|
|
HRESULT STDMETHODCALLTYPE OnItemStart(
|
|
/* [in] */ BSTR bstrUuidOperation,
|
|
/* [in] */ BSTR bstrXmlItem,
|
|
/* [out] */ LONG *plCommandRequest);
|
|
|
|
HRESULT STDMETHODCALLTYPE OnProgress(
|
|
/* [in] */ BSTR bstrUuidOperation,
|
|
/* [in] */ VARIANT_BOOL fItemCompleted,
|
|
/* [in] */ BSTR bstrProgress,
|
|
/* [out] */ LONG *plCommandRequest);
|
|
|
|
HRESULT STDMETHODCALLTYPE OnOperationComplete(
|
|
/* [in] */ BSTR bstrUuidOperation,
|
|
/* [in] */ BSTR bstrXmlItems);
|
|
|
|
private:
|
|
long m_refs;
|
|
};
|
|
|
|
//wrapper class for AU to do detection using IU
|
|
class AUClientCatalog : public AUBaseCatalog
|
|
{
|
|
public:
|
|
AUClientCatalog(): m_bstrClientInfo(NULL), m_pInstallCallback(NULL) {}
|
|
~AUClientCatalog();
|
|
HRESULT InstallItems(BOOL fAutoInstall);
|
|
HRESULT Init();
|
|
// void Uninit();
|
|
|
|
IProgressListener * m_pInstallCallback;
|
|
BSTR m_bstrClientInfo;
|
|
BOOL m_fReboot;
|
|
CClientWrkThread m_WrkThread;
|
|
};
|