一、判断指定程序名的进程是否存在

BOOL EnumWindows( WNDENUMPROC lpEnumFunc, // pointer to callback function LPARAM lParam // application-defined value);

The EnumWindows function enumerates all top-level windows on the screen by passing the handle to each window, in turn, to an application-defined callback function. EnumWindows continues until the last top-level window is enumerated or the callback function returns FALSE.

BOOL CALLBACK IpEnumFunc(HWND hwnd,LPARAM lParam)
{
 char wndName[100];
 ::GetWindowText(hwnd,wndName,sizeof(wndName));
 if(wndName!="")
 {
  if(strcmp(wndName,name1)==0)
  {
   WndHnd=hwnd;
   flag=1;
   
  }
  }
 return 1;
}

二、判断指定进程名的进程是否存在

DWORD GetProcessidFromName(LPCTSTR name)
{
 PROCESSENTRY32 pe;
 DWORD id=0;
 HANDLE hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
 pe.dwSize=sizeof(PROCESSENTRY32);
 if(!Process32First(hSnapshot,&pe))
  return 0;
 while(1)
 {
  pe.dwSize=sizeof(PROCESSENTRY32);
  if(Process32Next(hSnapshot,&pe)==FALSE)
   break;
  if(strcmp(pe.szExeFile,name)==0)
  {
   id=pe.th32ProcessID;
   
   break;
  }

}
 CloseHandle(hSnapshot);
 return id;
}

如果返回值不为零,则存在,否则不存在。

三/*判断是否是x64进程
参  数:进程句柄
返回值:是x64进程返回TRUE,否则返回FALSE
*/
BOOL IsWow64ProcessEx(HANDLE hProcess)
{
/*判断ntdll中的导出函数,可知是否是64位OS*/
HMODULE hMod=GetModuleHandle("ntdll.dll");
FARPROC x64fun=::GetProcAddress(hMod,"ZwWow64ReadVirtualMemory64");
if(!x64fun) return FALSE;

/*利用IsWow64Process判断是否是x64进程*/
typedef BOOL(WINAPI *pfnIsWow64Process)(HANDLE,PBOOL);
pfnIsWow64Process fnIsWow64Process=NULL;

hMod=GetModuleHandle("kernel32.dll");
fnIsWow64Process=(pfnIsWow64Process)GetProcAddress(hMod,"IsWow64Process");
if(!fnIsWow64Process) return FALSE; //如果没有导出则判定为32位

BOOL bX64;
if(!fnIsWow64Process(hProcess,&bX64)) return FALSE;

return !bX64;
}

vc判断指定进程或程序名是否存在和进程为64或者32位相关推荐

  1. C++判断系统位数(64位或32位)

    C++判断系统位数[64位或32位] 实现方法 原理 函数 实例 总结 实现方法 本文主要介绍1种兼容性强&简单的判断方法,希望对你有帮助; 原理 64位系统会在c:\Windows创建Sys ...

  2. Windows编程-判断一个程序是64还是32位的小程序

    //编写一个判断进程是否位64位程序的函数 typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL); LPFN_ISWOW64PROCES ...

  3. Wow64(32位进程)注入DLL到64位进程

    http://blog.poxiao.me/p/wow64-process-inject-dll-into-x64-process/#Wow64环境下32位进程注入64位进程 DLL注入 向其他进程注 ...

  4. 32位程序注入64位DLL到64位进程

    向其他进程注入DLL通常的做法是通过调用CreateRemoteThread这个API在目标进程内创建一个远程线程,用这个线程来调用LoadLibraryA或LoadLibraryW(下文统称Load ...

  5. c语言程序判断32位还是64位,c++ 判断是64位还是32位系统的实例

    1.IsWow64Process 确定指定进程是否运行在64位操作系统的32环境(Wow64)下. 语法 BOOL WINAPI IsWow64Process( __in HANDLE hProces ...

  6. linux+kill+进程和线程,什么是程序,进程和线程?三者之间有何关系?

    进程 进程与线程的历史 进程与线程之间的关系 重点 进程 和 线程的概念 进程和程序关系 cpu在执行程序时什么叫进程 swap 内存的缺页异常 大的异常 小的异常 内存映射mmap 内存泄露 tas ...

  7. VB判断指定名字的进程是否存在函数

    '============================================================= '函数名:CheckApplicationIsRun '作 用:判断进程是 ...

  8. VC++如何判断当前操作系统是32位还是64位?

    IsWow64Process 确定指定进程是否运行在64位操作系统的32环境(Wow64)下. 64位系统 运行64位程序 返回false 64位系统 运行32位程序 返回true 32位系统 运行6 ...

  9. VC++判断文件或文件夹是否存在(转)

    VC++判断文件或文件夹是否存在 在Windows应用项目中,几乎总会需要用到一些文件系统相关的函数,如:判断文件是否存在,判断文件夹是否为空,删除文件夹及其所有子项,计算文件夹的大小,等等.不知为何 ...

最新文章

  1. linux安装无线电软件,基于Linux的软件无线电系统软件平台的研究与实现
  2. qt插件元数据不包含一个有效的元数据_Qt5个人软件插件使用(低级API)
  3. git 拉代码_一篇文章理清Git
  4. oracle 10g安装黑框消失,win7下安装和卸载oracle 10g
  5. OPA 18 - iTeardownMyAppFrame
  6. Educational Codeforces Round 112 (Rated for Div. 2)
  7. Vue + Spring Boot 项目实战(四):前后端结合测试(登录页面开发)
  8. kd树介绍(KNN算法引出)
  9. golang http 返回html文件_用Golang写爬虫(三) - 使用goquery
  10. 从数学到计算机 从莱布尼兹到冯诺依曼 从数理逻辑到算法分析
  11. 编译原理---NFA转化为DFA---DFA最小化(自己看)
  12. n=sizeof(a)/sizeof(int)的含义(C语言)
  13. 图片怎么批量修改尺寸
  14. 打开计算机任务栏有桌面没,电脑桌面任务栏不显示打开的窗口怎么办
  15. js 判断3D空间中 三点共线
  16. Luogu3387 缩点
  17. python 机器人运动仿真_基于ros平台的移动机器人的设计与运动仿真-创新创业训练计划.pdf...
  18. 最近邻方法和向量模型——第一部分
  19. python笔记 基础语法·第14课 【三局两胜角斗场小游戏,类与对象】
  20. 给大家讲个笑话,拿了个offer,因为体检查出脂肪肝,公司把我拒绝了!

热门文章

  1. mybatis 两种CRUD操作操作(资源来子孤傲苍狼)
  2. ajax(面试重点)
  3. vue+vant2—篇3—定制主题色
  4. “微信”影响力报告:用数据读懂微信五大业务
  5. day05_雷神_函数进阶
  6. 更新了驱动导致电脑某个设备失效的解决方法
  7. 因乐视网IPO财务造假,多位发审委委员被抓;旷视科技完成 4.6亿美元C轮融资丨价值早报
  8. iPhone9上市延迟,iPhone11大降价抢占市场
  9. 3分钟带你看懂巨龙信息大数据服务总线
  10. c语言typedef的用法,C语言中typedef用法总结,看完就能像编程老手一样熟练运用...