windows-nt/Source/XPSP1/NT/enduser/windows.com/lib/download/dlcache.h
2020-09-26 16:20:57 +08:00

60 lines
1.2 KiB
C++

/********************************************************************
Copyright (c) 2001 Microsoft Corporation
Module Name:
dlcache.h
Revision History:
DerekM created 11/26/01
********************************************************************/
#ifndef DLCACHE_H
#define DLCACHE_H
#if defined(UNICODE)
#include <tchar.h>
#include <dllite.h>
const DWORD c_dwProxyCacheTimeLimit = 60 * 60 * 1000; // 1h
struct SWUDLProxyCacheObj
{
LPWSTR wszSrv;
LPWSTR wszProxy;
LPWSTR wszBypass;
DWORD dwAccessType;
DWORD cbProxy;
DWORD cbBypass;
DWORD dwLastCacheTime;
DWORD iLastKnownGood;
SWUDLProxyCacheObj *pNext;
};
class CWUDLProxyCache
{
private:
SWUDLProxyCacheObj *m_rgpObj;
SWUDLProxyCacheObj *internalFind(LPCWSTR wszSrv);
public:
CWUDLProxyCache();
~CWUDLProxyCache();
BOOL Set(LPCWSTR wszSrv, LPCWSTR wszProxy, LPCWSTR wszBypass,
DWORD dwAccessType);
BOOL Find(LPCWSTR wszSrv, LPWSTR *pwszProxy, LPWSTR *pwszBypass,
DWORD *pdwAccessType);
BOOL SetLastGoodProxy(LPCWSTR wszSrv, DWORD iProxy);
BOOL GetLastGoodProxy(LPCWSTR wszSrv, SAUProxySettings *paups);
BOOL Empty(void);
};
#endif
#endif