
软件支持全系列视窗 *** 作系统,包括Windows2003以及最新的64位 *** 作系统,
软件主窗口分为上下两个面板,上部“进程”面板,提供了详细的进程信息列表,如:进程名、程序描述、开发商信息等资料。列表采用进程树方式显示,能够直观显示各进程之间的依存关系。高亮显示功
能,蓝色为用户进程、红色为系统进程。这些人性化细节令人称道,现在迅速发现可疑程序并不是件太难的事情。
一、系统进程仔细看
光说不练假把式,ProcessExplorer进程管理功能究竟有多强,还是亲自实践一下吧!
这不,笔者在Winlogon.exe进程树下发现了一个可疑用户进程:TIMPlatform.exe(高亮显示就是贴心啊)。显示公司名是:tencent,不就是腾迅吗?QQ里面什么时候多了这个东东,名字也是可以伪装的,
安全第一,还是看看这个程序的详细资料吧。
500)this.width=500"title="点击这里用新窗口浏览图片">
可疑进程
鼠标双击选定进程,进入“属性”面板。
“映象”选项卡,提供具体的文件路径、命令行、当前运行目录等资料。
“性能”:CPU、句柄、内存、I/O资料一目了然。
“性能曲线图表”:以图表方式显示该进程的CPU、内存使用情况。
“线程”:线程ID、进程启动时间、基本优先级、模块、堆栈等资料。
“TCP/IP”:显示进程使用的网络协议、本地地址、远程地址等资料。只要是网络通信都逃不过软件
的监控。比如,查看QQ的进程属性,同自己聊天的QQ好友IP地址,在远程地址栏里清晰可见。
“安全性”:显示用户权限分配。
“环境变量”:显示系统环境变量。
“字符串”:显示文件包含的各种字符串资料。
可以看到,该程序正是在QQ安装目录下面,看来的确是QQ自带,可以放心使用。当然,如果你是个打
破砂锅问到底的人,ProcessExplorer也会给你满意答案。继续选定当前进程,按键盘快捷键“Ctrl+G”
,软件会以“TIMPlatform.exe”为关键字,调用Google搜索引擎进行检索。很快就可以看到相关搜索结
果。明白了吧,TIMPlatform.exe是QQ和TM共用的外部应用开发接口管理程序,就是QQ中那个“一键切换
到TM”功能调用的进程,如果你不需要它,可以关闭而不影响QQ使用。
500)this.width=500"title="点击这里用新窗口浏览图片">
使用Google搜索引擎进行关键字搜索非常有用,大家不妨多试试。许多时候,如果搜索的进程刚好是
病毒,那么检索结果中将明白无误的说明。嘿,也许杀毒方案也在里面啦,赶紧看看吧。
三、删除“无法删除文件”
软件的功能还不止于此:巧妙删除顽固文件,也是妙用之一。
我们在删除文件时,经常都会遇到这样的提示:“无法删除××文件,共享冲突”,遇到这种情况,大家多半都会重启电脑后再删除文件。而现在很容易就能就能解决这一问题,例:“D:\1.jpg”文件无法
删除,进入ProcessExplorer,选择菜单:“查找”→“查找句柄”,进入查找对话框。输入文件名:
“1.jpg”(不含引号)。在结果中可以看到当前文件被HprSnap5.exe文件占用着。原来如此,是抓图软
件HyperSnap-DX占用着进程,自己刚才的确用它打开过文件。接下来就很简单了,先关闭HprSnap5.exe进
程,再去删除“D:\1.jpg”文件。
四、总结
在软件中查看系统信息也很方便,快捷键“Ctrl+I”调用“系统信息”窗口。怎么样,功能、界面不 输于任务管理器吧。CPU、内存使用记录等资料一应俱全。鼠标滑过“CPU使用记录”曲线图上相应时间段,还可以显示该时段某进程的使用情况。其它如分页、I/O信息更是任务管理器所不具有的。现在你是否考虑用ProcessExplorer来正式替换Windows任务管理器呢?点击菜单“选项”→“替换taskmanager”。
以后,无论是“Ctrl+Alt+Del”还是通过任务栏右键菜单方式调用任务管理器,运行的都将是
ProcessExplorer。
你首先需要为VC下载一个MicrosoftPlatform
SDK
for
Windows
XP
SP2,有了这个包以后,将psapi.h和psapi.lib拷贝到VC的include和lib目录,采用PSAPI编程:
1、用EnumProcesses函数列出当前所有进程
2、用OpenProcess打开进程
3、用GetProcessImageFileName函数就可以获取程序的完整目录
上面三个函数的资料在互联网上很完整,你可以用函数名作为关键字搜索一下就知道了。
下面举个例子:
#include
<windows.h>
#include
<stdio.h>
#include
<tchar.h>
#include
<psapi.h>
#pragma
comment(lib,
"psapi.lib")
void
PrintProcessNameAndID(
DWORD
processID
)
{
TCHAR
szProcessName[MAX_PATH]
=
TEXT("<unknown>")
TCHAR
szProcessPath[MAX_PATH]
=
TEXT("<unknown>")
//
获取进程句柄
HANDLE
hProcess
=
OpenProcess(
PROCESS_QUERY_INFORMATION
|
PROCESS_VM_READ,
FALSE,
processID
)
//
获取进程名称和路径
if
(NULL
!=
hProcess
)
{
HMODULE
hMod
DWORD
cbNeeded
if
(
EnumProcessModules(
hProcess,
&hMod,
sizeof(hMod),
&cbNeeded)
)
{
GetModuleBaseName(
hProcess,
hMod,
szProcessName,
sizeof(szProcessName)/sizeof(TCHAR)
)
}
GetProcessImageFileName(hProcess,
szProcessPath,
MAX_PATH)
}
//
打印进程名、进程号和路径地址.
_tprintf(
TEXT("%s
(PID:
%u)
<%s>\n"),
szProcessName,
processID,
szProcessPath
)
CloseHandle(
hProcess
)
}
void
main(
)
{
//
获取进程列表.
DWORD
aProcesses[1024],
cbNeeded,
cProcesses
unsigned
int
i
if
(
!EnumProcesses(
aProcesses,
sizeof(aProcesses),
&cbNeeded
)
)
return
//
计算当前一共多少个活动进程
cProcesses
=
cbNeeded
/
sizeof(DWORD)
//打印进程信息
for
(
i
=
0
i
<
cProcesses
i++
)
if(
aProcesses[i]
!=
0
)
PrintProcessNameAndID(
aProcesses[i]
)
}
Process Explorer 工具,把系统中当前正在运行的进程以列表的形式进行展开,可以查看进程相关的所有信息,如进程父进程、进程线程、进程相关权限、杀进程、暂停进程等等。
Monitor 工具很好用,可以监控进程在系统内的所有 *** 作。如逆向一个程序,查找一个程序等。
合适的抓包时机,合适的过滤条件,可以精准的定位到程序的相关 *** 作。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)