Leaked source code of windows server 2003
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.
|
|
//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992-1998. // // File: notftn.idl // // Contents: wrapper idl for the msnotify.idl // private interfaces are in this idl file // // Classes: // // Functions: // // History: 1-09-1997 JohannP (Johann Posch) Created // //---------------------------------------------------------------------------- import "msnotify.idl"; #pragma midl_echo("#include <msnotify.h> ")
// // private interface; used by notfmgr only // cpp_quote("#ifndef _LPNOTIFICATIONRUNNING_DEFINED") cpp_quote("#define _LPNOTIFICATIONRUNNING_DEFINED")
[ local, object, uuid(c733e4ad-576e-11d0-b28c-00c04fd7cd22), pointer_default(unique) ]
interface INotificationRunning : IUnknown { typedef [unique] INotificationRunning *LPNOTIFICATIONRUNNING;
} cpp_quote("#endif")
// // this interface is not public yet // cpp_quote("#ifndef _LPNOTIFICATIONPROCESSMGR0_DEFINED") cpp_quote("#define _LPNOTIFICATIONPROCESSMGR0_DEFINED")
[ local, object, uuid(c733e4ae-576e-11d0-b28c-00c04fd7cd22), pointer_default(unique) ]
interface INotificationProcessMgr0 : IUnknown { typedef [unique] INotificationProcessMgr0 *LPNOTIFICATIONPROCESSMGR0;
typedef enum _tagNOTIFICATIONMGRMODE { // **** FLAGS OF THE NOTIFICATIONMGR *** // // the normal mode is to deliver imedialty // and async (postmessage to enter thread // of destination
// this process is the default process NM_DEFAULT_PROCESS = 0x00000001
// set this thread as the default thread of this process ,NM_DEFAULT_THREAD = 0x00000002
} _NOTIFICATIONMGRMODE;
typedef DWORD NOTIFICATIONMGRMODE;
HRESULT SetMode( // the clsid of the process [in] REFCLSID rClsID, // initialization mode [in] NOTIFICATIONMGRMODE NotificationMgrMode, // out previous default notification mgr [out] LPCLSID *pClsIDPre, // a reserved again [in] DWORD dwReserved );
// // // typedef enum _tagTHROTTLE_ITEMS_FLAGS { // do not deliver a scheduled item with this type TF_DONT_DELIVER_SCHEDULED_ITEMS = 0x00000001 // apply the time range of the structur; do not deliver during that range ,TF_APPLY_EXCLUDE_RANGE = 0x00000002 // items should not be delivered in shorter time distance as specified in // the dwMinItemUpdateInterval in minutes ,TF_APPLY_UPDATEINTERVAL = 0x00000004
} _THROTTLE_ITEMS_FLAGS;
typedef DWORD THROTTLE_ITEMS_FLAGS;
typedef struct THROTTLEITEM { // type of notification to be throttled NOTIFICATIONTYPE NotificationType; // maximum intances running parallel LONG nParallel; // mode flag: TBD DWORD dwFlags; // begin time it can run SYSTEMTIME stBegin; // end time it can run SYSTEMTIME stEnd; // the mimimum update interval in minutes DWORD dwMinItemUpdateInterval; } THROTTLEITEM, *PTHROTTLEITEM;
HRESULT RegisterThrottleNotificationType( [in] ULONG cItems, [in, size_is(cItems)] PTHROTTLEITEM pThrottleItems, [out] ULONG *pcItemsOut, [out] PTHROTTLEITEM *ppThrottleItemsOut, [in] DWORD dwMode, [in] DWORD dwReserved );
} cpp_quote("#endif")
// // unimplemented deliver modes // cpp_quote("#define DM_SYNCHRONOUS 0x00000010 ") cpp_quote("#define DM_ONLY_IF_NOT_PENDING 0x00001000 ")
|