Initial
This commit is contained in:
55
psapint/psapi95.hpp
Normal file
55
psapint/psapi95.hpp
Normal file
@@ -0,0 +1,55 @@
|
||||
#ifndef _PSAPINT_PSAPI95_HPP_
|
||||
#define _PSAPINT_PSAPI95_HPP_
|
||||
#ifndef _COMMON_WINDOWS_HPP_
|
||||
#include <common/windows.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_STRING_HPP_
|
||||
#include <common/string.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_LIBRARY_HPP_
|
||||
#include <common/library.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_TOOLHELP32_HPP_
|
||||
#include <common/tlhelp32.hpp>
|
||||
#endif
|
||||
#ifndef _PSAPINT_PROCESSID_HPP_
|
||||
#include <psapint/procid.hpp>
|
||||
#endif
|
||||
#ifndef _PSAPINT_PROCINFO_HPP_
|
||||
#include <psapint/procinfo.hpp>
|
||||
#endif
|
||||
|
||||
class ProcessEntry;
|
||||
|
||||
class ProcessAPI95
|
||||
{
|
||||
public:
|
||||
ProcessAPI95(void);
|
||||
virtual ~ProcessAPI95();
|
||||
bool enumProcesses(ProcessInfoList &processInfoList);
|
||||
bool isOkay(void)const;
|
||||
private:
|
||||
typedef BOOL (WINAPI *PFNPROCESS32FIRST)(HANDLE hSnapshot,PROCESSENTRY32 *lppe);
|
||||
typedef BOOL (WINAPI *PFNPROCESS32NEXT)(HANDLE hSnapshot,PROCESSENTRY32 *lppe);
|
||||
typedef BOOL (WINAPI *PFNMODULE32FIRST)(HANDLE hSnapshot,MODULEENTRY32 *lpme);
|
||||
typedef BOOL (WINAPI *PFNMODULE32NEXT)(HANDLE hSnapshot,MODULEENTRY32 *lpme);
|
||||
typedef HANDLE (WINAPI *PFNCREATETOOLHELP32SNAPSHOT)(DWORD dwFlags,DWORD thProcessID);
|
||||
ProcessAPI95(const ProcessAPI95 &someProcessAPI);
|
||||
ProcessAPI95 &operator=(const ProcessAPI95 &someProcessAPI);
|
||||
bool enumProcessModules(const ProcessID &processID,ProcessEntry &processEntry,ModuleInfoList &moduleInfoList);
|
||||
|
||||
PFNPROCESS32FIRST mpfnProcess32First;
|
||||
PFNPROCESS32NEXT mpfnProcess32Next;
|
||||
PFNMODULE32FIRST mpfnModule32First;
|
||||
PFNMODULE32NEXT mpfnModule32Next;
|
||||
PFNCREATETOOLHELP32SNAPSHOT mpfnCreateToolhelp32Snapshot;
|
||||
Library mLibrary;
|
||||
};
|
||||
|
||||
inline
|
||||
bool ProcessAPI95::isOkay(void)const
|
||||
{
|
||||
if(!mpfnProcess32First||!mpfnProcess32Next||!mpfnModule32First||!mpfnModule32Next||!mpfnCreateToolhelp32Snapshot)return false;
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user