取得运行中程序列表
来源:互联网 发布:中国网络作协紫峰闲人 编辑:程序博客网 时间:2024/05/28 16:23
参照下面代码
using namespace std;
typedef vector<PROCESSENTRY32> EXEINFOLIST;
typedef EXEINFOLIST::iterator EXEINFOITER;
BOOL GetExeList()
{
PROCESSENTRY32 ExeInfo;
ExeInfo.dwSize=sizeof(ExeInfo);
DWORD dwLastError = 0;
HANDLE hProcessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
if(hProcessSnap == INVALID_HANDLE_VALUE)
{
dwLastError = ::GetLastError();
return FALSE;
}
BOOL bMore=::Process32First(hProcessSnap,&ExeInfo);
if (bMore) {
m_ProcessList.push_back(ExeInfo);
}
while(bMore)
{
bMore=::Process32Next(hProcessSnap,&ExeInfo);
if (!bMore) {
dwLastError = ::GetLastError();
}
else {
m_ProcessList.push_back(ExeInfo);
}
}
::CloseHandle(hProcessSnap);
return TRUE;
}
typedef struct tagPROCESSENTRY32 {
DWORD dwSize;
DWORD cntUsage;
DWORD th32ProcessID;
ULONG_PTR th32DefaultHeapID;
DWORD th32ModuleID;
DWORD cntThreads;
DWORD th32ParentProcessID;
LONG pcPriClassBase;
DWORD dwFlags;
TCHAR szExeFile[MAX_PATH];} PROCESSENTRY32,
*PPROCESSENTRY32;
提高进程权限
BOOL EnablePriv()
{
HANDLE hToken;
if ( OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken) )
{
TOKEN_PRIVILEGES tkp;
LookupPrivilegeValue( NULL,SE_DEBUG_NAME,&tkp.Privileges[0].Luid );
tkp.PrivilegeCount=1;
tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges( hToken,FALSE,&tkp,sizeof tkp,NULL,NULL );
return( (GetLastError()==ERROR_SUCCESS) );
}
return TRUE;
}
using namespace std;
typedef vector<PROCESSENTRY32> EXEINFOLIST;
typedef EXEINFOLIST::iterator EXEINFOITER;
BOOL GetExeList()
{
PROCESSENTRY32 ExeInfo;
ExeInfo.dwSize=sizeof(ExeInfo);
DWORD dwLastError = 0;
HANDLE hProcessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
if(hProcessSnap == INVALID_HANDLE_VALUE)
{
dwLastError = ::GetLastError();
return FALSE;
}
BOOL bMore=::Process32First(hProcessSnap,&ExeInfo);
if (bMore) {
m_ProcessList.push_back(ExeInfo);
}
while(bMore)
{
bMore=::Process32Next(hProcessSnap,&ExeInfo);
if (!bMore) {
dwLastError = ::GetLastError();
}
else {
m_ProcessList.push_back(ExeInfo);
}
}
::CloseHandle(hProcessSnap);
return TRUE;
}
typedef struct tagPROCESSENTRY32 {
DWORD dwSize;
DWORD cntUsage;
DWORD th32ProcessID;
ULONG_PTR th32DefaultHeapID;
DWORD th32ModuleID;
DWORD cntThreads;
DWORD th32ParentProcessID;
LONG pcPriClassBase;
DWORD dwFlags;
TCHAR szExeFile[MAX_PATH];} PROCESSENTRY32,
*PPROCESSENTRY32;
提高进程权限
BOOL EnablePriv()
{
HANDLE hToken;
if ( OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken) )
{
TOKEN_PRIVILEGES tkp;
LookupPrivilegeValue( NULL,SE_DEBUG_NAME,&tkp.Privileges[0].Luid );
tkp.PrivilegeCount=1;
tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges( hToken,FALSE,&tkp,sizeof tkp,NULL,NULL );
return( (GetLastError()==ERROR_SUCCESS) );
}
return TRUE;
}
- 取得运行中程序列表
- 取得程序运行目录
- 取得程序运行时间
- 取得所有运行程序
- 取得程序运行目录
- java中取得 当前程序运行所在的目录
- 取得已经安装程序列表
- 取得程序的运行时间
- Android取得已安装程序列表
- 取得程序运行的目录[360度]
- 取得运行程序的绝对路径名
- Delphi中取得程序版本号
- MFC中取得程序目录
- Delphi中取得程序版本号
- Delphi中取得程序版本号
- 取得网络中SQL的服务器列表
- WPF中取得系统字体列表
- c#中如何取得应用程序运行路径
- DFM文件中读写 TWriter对象的实现
- JAVA代码编写的30条建议
- Oracle触发器详细介绍
- Exception Handling Best Practices in .NET
- Asp.Net 取得来访者所在地地址类
- 取得运行中程序列表
- 第三天
- bash(详解)
- the comment of zend develepment environment
- javascript 自动追加和删除表格行
- 用程序恢复所备份的数据库
- 微软Silverlight 2支持Eclipse插件 向开源社区示好
- Common Javascript
- 如何获得checkbox值?