home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
vc98
/
include
/
subsmgr.idl
< prev
next >
Wrap
Text File
|
1998-04-25
|
8KB
|
194 lines
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright 1995 - 1998 Microsoft Corporation. All Rights Reserved.
//
//--------------------------------------------------------------------------
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// subsmgr.h")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// (C) Copyright 1995 - 1998 Microsoft Corporation. All Rights Reserved.")
cpp_quote("//")
cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF")
cpp_quote("// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO")
cpp_quote("// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A")
cpp_quote("// PARTICULAR PURPOSE.")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("")
cpp_quote("#pragma comment(lib,\"uuid.lib\")")
cpp_quote("")
cpp_quote("//---------------------------------------------------------------------------=")
cpp_quote("// Channel Manager Interfaces.")
cpp_quote("")
#ifndef DO_NO_IMPORTS
import "unknwn.idl";
#endif
//---------------------------------------------------------------
// Subscription Manager
//---------------------------------------------------------------
[
uuid(C54FD88A-FFA1-11d0-BC5E-00C04FD929DB), // LIBID_SubscriptionMgr
helpstring("Microsoft Subscription Manager 1.0"),
lcid(0x0000),
version(1.0)
]
library SubscriptionMgr
{
//---------------------------------------------------------------
// Subscription Manager
//---------------------------------------------------------------
[
uuid(085FB2C0-0DF8-11d1-8F4B-00A0C905413F), // IID_ISubscriptionMgr
helpstring("Subscription Manager interface"),
odl
]
interface ISubscriptionMgr : IUnknown
{
typedef enum SUBSCRIPTIONTYPE {
SUBSTYPE_URL = 0,
SUBSTYPE_CHANNEL = 1,
SUBSTYPE_DESKTOPURL = 2,
SUBSTYPE_EXTERNAL = 3,
SUBSTYPE_DESKTOPCHANNEL = 4
} SUBSCRIPTIONTYPE;
typedef enum SUBSCRIPTIONINFOFLAGS {
SUBSINFO_SCHEDULE = 0x0001,
SUBSINFO_RECURSE = 0x0002,
SUBSINFO_WEBCRAWL = 0x0004,
SUBSINFO_MAILNOT = 0x0008,
SUBSINFO_MAXSIZEKB = 0x0010,
SUBSINFO_USER = 0x0020,
SUBSINFO_PASSWORD = 0x0040,
SUBSINFO_TASKFLAGS = 0x0100,
SUBSINFO_GLEAM = 0x0200,
SUBSINFO_CHANGESONLY = 0x0400,
SUBSINFO_CHANNELFLAGS = 0x0800,
SUBSINFO_FRIENDLYNAME = 0x2000,
SUBSINFO_NEEDPASSWORD = 0x4000,
SUBSINFO_TYPE = 0x8000
} SUBSCRIPTIONINFOFLAGS;
cpp_quote("#define SUBSINFO_ALLFLAGS 0x0000EF7F")
typedef enum CREATESUBSCRIPTIONFLAGS {
CREATESUBS_ADDTOFAVORITES = 0x0001,
CREATESUBS_FROMFAVORITES = 0x0002,
CREATESUBS_NOUI = 0x0004,
CREATESUBS_NOSAVE = 0x0008,
CREATESUBS_SOFTWAREUPDATE = 0x0010,
} CREATESUBSCRIPTIONFLAGS;
typedef enum SUBSCRIPTIONSCHEDULE {
SUBSSCHED_AUTO = 0,
SUBSSCHED_DAILY = 1,
SUBSSCHED_WEEKLY = 2,
SUBSSCHED_CUSTOM = 3,
SUBSSCHED_MANUAL = 4
} SUBSCRIPTIONSCHEDULE;
typedef struct _tagSubscriptionInfo {
DWORD cbSize;
DWORD fUpdateFlags;
SUBSCRIPTIONSCHEDULE schedule;
CLSID customGroupCookie;
LPVOID pTrigger;
DWORD dwRecurseLevels;
DWORD fWebcrawlerFlags;
BOOL bMailNotification;
BOOL bGleam;
BOOL bChangesOnly;
BOOL bNeedPassword;
DWORD fChannelFlags;
BSTR bstrUserName;
BSTR bstrPassword;
BSTR bstrFriendlyName;
DWORD dwMaxSizeKB;
SUBSCRIPTIONTYPE subType;
DWORD fTaskFlags;
DWORD dwReserved;
} SUBSCRIPTIONINFO, *LPSUBSCRIPTIONINFO, *PSUBSCRIPTIONINFO;
HRESULT DeleteSubscription([in] LPCWSTR pwszURL, [in] HWND hwnd);
HRESULT UpdateSubscription([in] LPCWSTR pwszURL);
HRESULT UpdateAll();
HRESULT IsSubscribed([in] LPCWSTR pwszURL, [out] BOOL *pfSubscribed);
HRESULT GetSubscriptionInfo(
[in] LPCWSTR pwszURL,
[out] SUBSCRIPTIONINFO *pInfo);
HRESULT GetDefaultInfo([in] SUBSCRIPTIONTYPE subType,
[out] SUBSCRIPTIONINFO *pInfo);
HRESULT ShowSubscriptionProperties([in] LPCWSTR pwszURL, [in] HWND hwnd);
HRESULT CreateSubscription([in] HWND hwnd, [in] LPCWSTR pwszURL,
[in] LPCWSTR pwszFriendlyName, [in] DWORD dwFlags,
[in] SUBSCRIPTIONTYPE subsType, [in,out] SUBSCRIPTIONINFO *pInfo);
}
// Subscription Manager object
[
uuid(abbe31d0-6dae-11d0-beca-00c04fd940be), // CLSID_SubscriptionMgr
helpstring("SubscriptionMgr object")
]
coclass SubscriptionMgr
{
[default] interface ISubscriptionMgr;
}
}
cpp_quote("")
cpp_quote("")
cpp_quote("////////////////////////////////////////////////////////////////////////////")
cpp_quote("// Information Delivery Agent definitions")
cpp_quote("EXTERN_C const CLSID CLSID_WebCrawlerAgent; ")
cpp_quote("EXTERN_C const CLSID CLSID_ChannelAgent; ")
cpp_quote("EXTERN_C const CLSID CLSID_DialAgent; ")
cpp_quote("EXTERN_C const CLSID CLSID_CDLAgent; ")
cpp_quote("")
cpp_quote("// RecurseFlags property for web crawler")
typedef enum WEBCRAWL_RECURSEFLAGS {
WEBCRAWL_DONT_MAKE_STICKY = 0x0001,
WEBCRAWL_GET_IMAGES = 0x0002,
WEBCRAWL_GET_VIDEOS = 0x0004,
WEBCRAWL_GET_BGSOUNDS = 0x0008,
WEBCRAWL_GET_CONTROLS = 0x0010,
WEBCRAWL_LINKS_ELSEWHERE = 0x0020,
WEBCRAWL_IGNORE_ROBOTSTXT = 0x0080,
} WEBCRAWL_RECURSEFLAGS;
cpp_quote("")
cpp_quote("// ChannelFlags property for channel agent")
typedef enum CHANNEL_AGENT_FLAGS {
CHANNEL_AGENT_DYNAMIC_SCHEDULE = 0x0001,
CHANNEL_AGENT_PRECACHE_SOME = 0x0002, // Download Only Precache=Yes
CHANNEL_AGENT_PRECACHE_ALL = 0x0004, // Download All except Precache=No
CHANNEL_AGENT_PRECACHE_SCRNSAVER= 0x0008,
} CHANNEL_AGENT_FLAGS;
cpp_quote("")
cpp_quote("// Status codes for completed delivery agents")
cpp_quote("")
cpp_quote("// Maximum specified subscription size limit reached")
cpp_quote("#define INET_E_AGENT_MAX_SIZE_EXCEEDED _HRESULT_TYPEDEF_(0x800C0F80L) ")
cpp_quote("")
cpp_quote("// Maximum cache limit reached")
cpp_quote("#define INET_E_AGENT_CACHE_SIZE_EXCEEDED _HRESULT_TYPEDEF_(0x800C0F82L) ")
cpp_quote("")
cpp_quote("// Connection to Internet failed")
cpp_quote("#define INET_E_AGENT_CONNECTION_FAILED _HRESULT_TYPEDEF_(0x800C0F83L) ")
cpp_quote("")
cpp_quote("// A few URLs failed but the base url and most sub-urls succeeded")
cpp_quote("#define INET_S_AGENT_PART_FAIL _HRESULT_TYPEDEF_(0x000C0F81L) ")
cpp_quote("")
cpp_quote("// End Information Delivery Agent definitions")
cpp_quote("////////////////////////////////////////////////////////////////////////////")
cpp_quote("")
cpp_quote("")