mirror of https://github.com/tongzx/nt5src
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.
69 lines
2.1 KiB
69 lines
2.1 KiB
//+---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1994 - 1996.
|
|
//
|
|
// File: util.hxx
|
|
//
|
|
// Contents: Utility macros and function prototypes.
|
|
//
|
|
// History: 04-20-95 DavidMun Created
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
|
|
#ifndef __UTIL_HXX
|
|
#define __UTIL_HXX
|
|
|
|
//
|
|
// Fuctions
|
|
//
|
|
|
|
HRESULT Activate(
|
|
WCHAR *wszFileName,
|
|
ITask **ppJob,
|
|
IUnknown **ppQueue,
|
|
BOOL *pfJob);
|
|
LPCWSTR GetMonthsString(WORD rgfMonths);
|
|
LPCSTR GetInterfaceString(REFIID iid);
|
|
LPCSTR GetPriorityString(DWORD dwPriority);
|
|
LPCSTR GetJobFlagsString(DWORD flJobFlags);
|
|
LPCSTR GetTriggerTypeString(TASK_TRIGGER_TYPE TriggerType);
|
|
LPCSTR GetDaysString(DWORD rgfDays);
|
|
LPCSTR GetDaysOfWeekString(WORD flDaysOfTheWeek);
|
|
LPCSTR GetStatusString(HRESULT hrJobStatus);
|
|
HRESULT GetMoniker(WCHAR *wszFilename, IMoniker **ppmk);
|
|
HRESULT Bind(WCHAR *wszFilename, REFIID iidToBind, VOID **ppitf);
|
|
HRESULT DupString(const WCHAR *wszSource, WCHAR **ppwszDest);
|
|
HRESULT DumpJob(ITask *pJob);
|
|
VOID DumpJobFlags(DWORD flJobFlags);
|
|
HRESULT DumpTrigger(BOOL fJob, USHORT usTrigger);
|
|
HRESULT DumpTriggers(BOOL fJob);
|
|
HRESULT DumpJobTriggers(ITask *pJob);
|
|
HRESULT SaveIfDirty(ITask *pJob);
|
|
HRESULT SaveIfDirty(IUnknown *pJobQueue);
|
|
HRESULT _SaveIfDirty(IPersistFile *pPersistFile);
|
|
HRESULT HasFilename(IPersistFile *pPersistFile);
|
|
BOOL FileExists(LPWSTR wszFile);
|
|
HRESULT GetEnumeratorSlot(WCHAR **ppwsz, ULONG *pidxSlot);
|
|
HRESULT GetAndPrepareEnumeratorSlot(WCHAR **ppwsz, ULONG *pidxSlot);
|
|
HRESULT VerifySlotFilled(ULONG idxSlot);
|
|
VOID AddSeconds(SYSTEMTIME *pst, ULONG ulSeconds);
|
|
|
|
//
|
|
// Utility macros
|
|
//
|
|
|
|
#define LOG_AND_BREAK_ON_FAIL(hr, str) \
|
|
if (FAILED(hr)) \
|
|
{ \
|
|
g_Log.Write(LOG_FAIL, str " hr=%#010x", hr); \
|
|
break; \
|
|
}
|
|
|
|
#define BREAK_ON_FAILURE(hr) if (FAILED(hr)) break;
|
|
#define ARRAY_LEN(a) (sizeof(a)/sizeof(a[0]))
|
|
|
|
|
|
#endif // __UTIL_HXX
|
|
|