Initial
This commit is contained in:
61
hookproc/OFNHOOK.HPP
Normal file
61
hookproc/OFNHOOK.HPP
Normal file
@@ -0,0 +1,61 @@
|
||||
#ifndef _HOOKPROC_OFNHOOK_HPP_
|
||||
#define _HOOKPROC_OFNHOOK_HPP_
|
||||
#ifndef _HOOKPROC_APIENTRY_HPP_
|
||||
#include <hookproc/apientry.hpp>
|
||||
#endif
|
||||
#ifndef _HOOKPROC_PROCADDRESS_HPP_
|
||||
#include <hookproc/procaddr.hpp>
|
||||
#endif
|
||||
|
||||
class OFNHook;
|
||||
typedef ProcAddress<OFNHook> OpenFileHook;
|
||||
|
||||
class OFNHook : protected APIEntry, private OpenFileHook
|
||||
{
|
||||
public:
|
||||
OFNHook(void);
|
||||
virtual ~OFNHook();
|
||||
DWORD getHookAddress(void);
|
||||
HWND getHandle(void)const;
|
||||
HWND getParent(void)const;
|
||||
protected:
|
||||
virtual UINT hookProc(HWND hDlg,UINT uiMsg,WPARAM wParam,LPARAM lParam);
|
||||
private:
|
||||
enum {ParamLength=16};
|
||||
OFNHook &operator=(const OFNHook &someOFNHook);
|
||||
UINT entryProc(HWND hDlg,UINT uiMsg,WPARAM wParam,LPARAM lParam);
|
||||
HWND mhDlg;
|
||||
HWND mhParent;
|
||||
};
|
||||
|
||||
inline
|
||||
OFNHook::OFNHook(void)
|
||||
: APIEntry(ParamLength,(DWORD)this,getProcAddress((ProcAddress<OFNHook>::LPFNMETHODVOID)&OFNHook::entryProc)),
|
||||
mhDlg(0), mhParent(0)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
OFNHook &OFNHook::operator=(const OFNHook &someOFNHook)
|
||||
{ // no implementation
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
DWORD OFNHook::getHookAddress(void)
|
||||
{
|
||||
return codeBase();
|
||||
}
|
||||
|
||||
inline
|
||||
HWND OFNHook::getHandle(void)const
|
||||
{
|
||||
return mhDlg;
|
||||
}
|
||||
|
||||
inline
|
||||
HWND OFNHook::getParent(void)const
|
||||
{
|
||||
return mhParent;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user