WindowsXP-SP1/shell/shdocvw/wvtp.h

46 lines
941 B
C++

#ifdef __cplusplus
#include "capi.h"
// WinVerifyTrust delay load modelled on shell's urlmonp.h
#define DELAY_LOAD_WVT
class Cwvt
{
public:
#ifdef DELAY_LOAD_WVT
#define DELAYWVTAPI(_fn, _args, _nargs) \
HRESULT _fn _args { \
HRESULT hres = Init(); \
if (SUCCEEDED(hres)) { \
hres = _pfn##_fn _nargs; \
} \
return hres; } \
HRESULT (STDAPICALLTYPE* _pfn##_fn) _args;
HRESULT Init(void);
Cwvt();
~Cwvt();
BOOL m_fInited;
HMODULE m_hMod;
#else
#define DELAYWVTAPI(_fn, _args, _nargs) \
HRESULT _fn _args { \
HRESULT hr = ::#_fn _nargs; \
}
#endif
private:
DELAYWVTAPI(WinVerifyTrust,
(HWND hwnd, GUID * ActionID, LPVOID ActionData),
(hwnd, ActionID, ActionData));
public:
HRESULT VerifyTrust(HANDLE hFile, HWND hWnd, LPCWSTR szStatusText);
};
#endif