在64位系统中,怎样枚举出所有的进程?(包括32位和64位)

screen12 2014-09-28 06:28:32
我的要求是这样的:系统是64位的,但我希望用32位程序来解决问题。我希望枚举出系统所有使用了某一个DLL的进程,然后强制结束它们。

我用了CreateToolhelp32Snapshot 来枚举出所有的进程,并同样用这个函数枚举出每个进程中的模块,然后名字符合的,立即把该进程记录下来。

可是我发现,这样只能使用了该DLL的32位进程,但找不到64位进程。(64位进程实际上使用的是另一个64位的DLL,只不过同名而已)。

请问怎样在用32位的程序中,枚举出所有的使用了某一名字的DLL的进程?包括32位和64位。并必要时强制结束它们。能做到吗?

如果不能做到,是必须在64位程序中使用64位函数才能达到目的是吗?
...全文
836 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
screen12 2014-09-30
  • 打赏
  • 举报
回复
引用 5 楼 oyljerry 的回复:
[quote=引用 4 楼 screen12 的回复:] [quote=引用 3 楼 oyljerry 的回复:] 32位进程,64位进程各自枚举进程
可我用32位的程序,用CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)也能枚举出64位的进程,notepad.exe在64位系统中是64位进程吧?它能找到。 但是我进一步想在32位程序中用CreateToolhelp32Snapshot去枚举notepad.exe中的所有模块时,却失败了。[/quote] 有些能让你获取,有些并不一定会让你能。[/quote] 如果换用EnumProcessModules,能不能在32位进程中,枚举出64位进程的模块?
赵4老师 2014-09-29
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下;
zwfgdlc 2014-09-29
  • 打赏
  • 举报
回复
oyljerry 2014-09-29
  • 打赏
  • 举报
回复
引用 4 楼 screen12 的回复:
[quote=引用 3 楼 oyljerry 的回复:] 32位进程,64位进程各自枚举进程
可我用32位的程序,用CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)也能枚举出64位的进程,notepad.exe在64位系统中是64位进程吧?它能找到。 但是我进一步想在32位程序中用CreateToolhelp32Snapshot去枚举notepad.exe中的所有模块时,却失败了。[/quote] 有些能让你获取,有些并不一定会让你能。
screen12 2014-09-29
  • 打赏
  • 举报
回复 1
引用 3 楼 oyljerry 的回复:
32位进程,64位进程各自枚举进程
可我用32位的程序,用CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)也能枚举出64位的进程,notepad.exe在64位系统中是64位进程吧?它能找到。 但是我进一步想在32位程序中用CreateToolhelp32Snapshot去枚举notepad.exe中的所有模块时,却失败了。
oyljerry 2014-09-29
  • 打赏
  • 举报
回复
32位进程,64位进程各自枚举进程
本工具是一款系统辅助工具,使用本工具可以帮你揪系统的病毒和木马,彻底保护您的计算机安全,因为本工具无需加载驱动,所以使用本工具不太可能造成 系统不稳定故障如(蓝屏、死机等),如果现此状况,可能是您使用其他工具造成的。 目前支持的系统为 WinXP/2003/vista/server2008/Win7/Win8/ 32和64位均支持。 如果您对系统只有初面了解, 建议您还是不要使用, 即使要使用, 也不要胡乱操作. 主要功能介绍: [进程管理] 1.目前本工具 通过系统底层方式枚举进程,可以轻易的将系统所有进程包括隐藏的进程)显示来; 2.本工具 提供三种方式来结束进程,分为:普通结束、强制结束、驱动结束; 3.如果遇到无法终止的进程, 可以右键弹菜单 ->结束进程 -> 添加到系统重启后自动删除文件, 这样文件将在下次计算机启动时被删除. 4.如果您是电脑系统专家级,本工具可以右键 ->在下方显示进程模块窗口,可以查看进程加载的模块,启动的线程和载入的窗口信息; [内核模块] 1.本功能为暴力枚举系统已加载的内核模块,蓝色为未知驱动,红色为危险的驱动; [内核线程] 1.枚举系统自动启动了的驱动线程,可以对内核线程进行(暂停、恢复); [启动项] 1.枚举系统所有开机启动项; [网络连接] 1.显示系统所有程序连接网络情况,可以对程序禁止连接网络; [注册表] 1.如果您无法运行电脑自带的注册表编辑器,本工具提供自带的注册表编辑器,可以轻易的修改注册表所有项及子项; [文件管理] 1.默认以Windows默认方式显示磁盘的所有文件(包括隐藏的文件),可以对文件打开、强制删除、重命名等操作; [修复系统] 1.显示所有IE插件,Bho插件和Activex插件都可以一一枚举来,可以轻易的强制清除恶意插件; 2.枚举系统所有已安装的输入法,某些WG或木马使用输入法来注入后如果有残留,可以右键 -> 删除IMG和文件来清除输入法; 3.检测系统文件关联情况,红色为危险项; 4.这里只介绍几个主打功能,其它不一一介绍了; [限制修复] 1.可以检测并修复一些木马禁用了系统的重要功能; 其它功能不多介绍,赶紧体验吧。
软件介绍 Wtool(WT)是一款系统辅助工具,使用本工具可以让你系统安全状况一目了然,并有带有修复功能,因为WTool无需加载驱动,所以使用本工具不太可能照成 系统不稳定故障如(蓝屏、死机等),如果现此状况,可能是您使用其他工具造成的。 主要功能 [进程管理] 1.目前 Wtool 通过系统底层方式枚举进程,可以轻易的将系统所有进程包括隐藏的进程)显示来; 2.Wtool 提供三种方式来结束进程,分为:普通结束、强制结束、驱动结束; 3.如果遇到无法终止的进程, 可以右键弹菜单 ->结束进程 -> 添加到系统重启后自动删除文件, 这样文件将在下次计算机启动时被删除. 4.如果您是电脑系统专家级,Wtool可以右键 ->在下方显示进程模块窗口,可以查看进程加载的模块,启动的线程和载入的窗口信息; [内核模块] 1.本功能为暴力枚举系统已加载的内核模块,蓝色为未知驱动,红色为危险的驱动; [内核线程] 1.枚举系统自动启动了的驱动线程,可以对内核线程进行(暂停、恢复); [启动项] 1.枚举系统所有开机启动项; [网络连接] 1.显示系统所有程序连接网络情况,可以对程序禁止连接网络; [注册表] 1.如果您无法运行电脑自带的注册表编辑器,WT提供自带的注册表编辑器,可以轻易的修改注册表所有项及子项; [文件管理] 1.默认以Windows默认方式显示磁盘的所有文件(包括隐藏的文件),可以对文件打开、强制删除、重命名等操作; [修复系统] 1.显示所有IE插件,Bho插件和Activex插件都可以一一枚举来,可以轻易的强制清除恶意插件; 2.枚举系统所有已安装的输入法,某些WG或木马使用输入法来注入后如果有残留,可以右键 -> 删除IMG和文件来清除输入法; 3.检测系统文件关联情况,红色为危险项; 4.这里只介绍几个主打功能,其它不一一介绍了; [限制修复] 1.可以检测并修复一些木马禁用了系统的重要功能;

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧