ProcessMagnifier.vbs进程查看

' FileName: ProcessMagnifier.vbs   
' Function: Capture information about the running processes in detail   
' code by somebody   
' QQ: 240460440   
' LastModified:2007-11-16 18:25   
' 仅供学习

Const HKEY_CURRENT_USER = &H80000001   
oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")   
strKeyPath = "Console\%SystemRoot%_system32_cmd.exe"  
oReg.CreateKey(HKEY_CURRENT_USER, strKeyPath)   
strValueName1 = "CodePage"  
dwValue1 = 936   
strValueName2 = "ScreenBufferSize"  
dwValue2 = 98304200   
strValueName3 = "WindowSize"  
dwValue3 = 2818173   
strValueName4 = "HistoryNoDup"  
dwValue4 = 0   
strValueName5 = "WindowPosition"  
dwValue5 = 131068   
strValueName6 = "QuickEdit"  
dwValue6 = 2048   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName1, dwValue1)   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName2, dwValue2)   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName3, dwValue3)   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName4, dwValue4)   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName5, dwValue5)   
oReg.SetDWORDValue(HKEY_CURRENT_USER, strKeyPath, strValueName6, dwValue6)

Dim objWSH, FinalPath   
objWSH = WScript.CreateObject("WScript.Shell")   
If (LCase(Right(WScript.Fullname, 11)) = "wscript.exe") Then  
    FinalPath = "'" & WScript.ScriptFullName & "'"  
    objWSH.Run("cmd.exe /k cscript //nologo " & Replace(FinalPath, "'", """"))   
    WScript.Quit()   
End If

oReg.DeleteKey(HKEY_CURRENT_USER, strKeyPath)   
oReg = Nothing

WScript.Echo()   
WScript.Sleep(1000)   
WScript.Echo("当前正在运行的进程简要信息列表如下:")   
WScript.Echo(vbCrLf)   
WScript.Sleep(2000)

Dim MyOBJProcessName   
OBJWMIProcess = GetObject("winmgmts:\\.\root\cimv2").ExecQuery("Select * From Win32_Process")   
 WScript.Echo "Name:               Priority:   PID:    Owner:" &vbTab&vbTab&"ExecutablePath: "  
WScript.Echo("---------------------------------------------------------------------------------------")   
For Each OBJProcess In OBJWMIProcess   
 MyOBJProcessName=OBJProcess.Name&"                    "  
    colProperties = OBJProcess.GetOwner(strNameOfUser, strUserDomain)   
 WScript.Echo Mid(MyOBJProcessName,1,20) &vbTab& OBJProcess.Priority &vbTab& OBJProcess.ProcessID &vbTab& strNameOfUser &vbTab&vbTab& OBJProcess.ExecutablePath   
Next

WScript.Sleep(5000)   
WScript.Echo(vbCrLf)   
WScript.Echo("当前正在运行的进程以及其加载的模块详细信息树状结构如下:")   
WScript.Echo(vbCrLf)   
WScript.Sleep(3000)   
WScript.Echo vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab&vbTab& vbTab&"创建时间             文件制造商"

OBJWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")   
OBJRefresher = CreateObject("WbemScripting.SWbemRefresher")   
colItems = OBJRefresher.AddEnum(OBJWMIService, "Win32_PerfFormattedData_PerfProc_FullImage_Costly").ObjectSet   
OBJRefresher.Refresh()   
For Each OBJItem In colItems   
    Dim originalPath, ModulePath, WMIPathMode, FileManufacturer, LCaseModulePath   
    Dim FileExtension, mark, MyLCaseModulePath, FinalModulePath   
    originalPath = OBJItem.Name  
    ModulePath = Split(originalPath, "/")   
    WMIPathMode = Replace(ModulePath(1), "\", "\\")   
    OBJWMI = GetObject("winmgmts:\\.\root\CIMV2")   
    colManufacturer = OBJWMI.ExecQuery("SELECT * FROM CIM_DataFile Where Name='" & WMIPathMode & "'")   
    For Each OBJManufacturer In colManufacturer   
        FileManufacturer = Trim(OBJManufacturer.Manufacturer)   
        LCaseModulePath = LCase(Trim(OBJManufacturer.Name))   
        FileExtension = Right(LCaseModulePath, 3)   
        MyLCaseModulePath = LCaseModulePath & "                                                                                                                "  
        FSO = CreateObject("Scripting.FileSystemObject").GetFile(LCaseModulePath)   
        If FileExtension = "exe" Then  
            mark = "├—"  
            FinalModulePath = Mid(MyLCaseModulePath, 1, 118)   
            WScript.Echo("│")   
        Else  
            mark = "│├─"  
            FinalModulePath = Mid(MyLCaseModulePath, 1, 116)   
        End If  
    WScript.Echo mark & FinalModulePath & FSO.DateCreated &vbTab& FileManufacturer                            
    Next  
Next

(0)

相关推荐

  • ProcessMagnifier.vbs进程查看

    ' FileName: ProcessMagnifier.vbs    ' Function: Capture information about the running processes in detail    ' code by somebody    ' QQ: 240460440    ' LastModified:2007-11-16 18:25    ' 仅供学习 Const HKEY_CURRENT_USER = &H80000001    oReg = GetObject(&q

  • dos进程查看与停止命令分享(tasklist,taskkill)

    dos进程查看与停止命令 查看进程: tasklist /svc 停止进程: taskkill /im 2468 /f DOS下查看进程,结束进程命令(黑客常用命令) shall时想给对方上传一个木马什么的,总会遇一些东西的阻止,有些可以停止服务呀什么的,但有些东西只能关闭,这个时候我们就要用两个命令了,首先是tasklist 查看进程例表,在dos下直接输入tasklist就会例出所运行的所有进程,如我的电脑. 在例表中每一个进程都有一个相对的PID值,我们只要把相对的PID值kill掉就OK

  • VBS进程判断代码

    vbs核心代码 Option Explicit Dim objWMIService,colProcessList,strComputer strComputer = "." Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colProcessList = o

  • linux中nohup和后台运行进程查看及终止

    nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号.在注销后使用 nohup 命令运行后台中的程序.要运行后台中的 nohup 命令,添加 & ( 表示"and"的符号)到命令的尾部. 1.nohup 用途:不挂断地运行命令. 语法:nohup Command [ Arg - ] [ & ] 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中. 如果当前目录的

  • vbs枚举进程 vbs列出进程的详细列表

    今天要说的是用VBS(VBScript脚本)来枚举Windows操作系统的进程,这样做的用处在什么地方呢?举个例子吧,比如你有时候想监控某个进程是否在运行,这就非常有用了. 示例: 用VBS脚本枚举进程 'enum.vbs Dim WMI,Objs,Process Set WMI=GetObject("WinMgmts:") Set Objs=WMI.InstancesOf("Win32_Process") Process="" For Each

  • 查看系统C盘剩余空间的VBS脚本

    复制代码 代码如下: '说明 : 通过VBS脚本查看 系统C盘 剩下的空间 'Creator : Eric1991 'Date : 2013-11-4 Set objWMIService = GetObject("winmgmts:") Set objLogicalDisk = objWMIService.Get("Win32_LogicalDisk.DeviceID='c:'") Wscript.Echo cint(objLogicalDisk.FreeSpace

  • LINUX查看进程的4种方法(小结)

    进程是在 CPU 及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程). **查看进程方法:** 第一种: ps aux ps命令用于报告当前系统的进程状态.可以搭配kill指令随时中断.删除不必要的程序.ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结束.进程有没有僵死.哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的. a:显示当前终端下的所有进程信息,包括其他用户的进程. u:使用以用户为主

  • 在Linux中查看所有正在运行的进程的方法

    可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息. ps命令能提供一份当前进程的快照.如果想状态可以自动刷新,可以使用top命令. ps命令 输入下面的ps命令,显示所有运行中的进程: # ps aux | less 其中, -A:显示所有进程 a:显示终端中包括其它用户的所有进程 x:显示无控制终端的进程 任务:查看系统中的每个进程. # ps -A # ps -e 任务:查看非root运行的进程 # ps

  • Linux ps命令详解及Linux查看进程的操作方法

    目录 一.常用操作 1.查看所有进程(连带命令行) 2.显示所有包含其他使用者的进程 3.查看指定进程(grep过滤) 4.查看CPU/内存占用率最高的进程 5.查看指定用户的进程 6.分页查看进程 二.拓展 1.TTY字段(终端类型) 2.STAT字段(进程状态) 3.僵尸进程 作用:查看系统进程,比如正在运行的进程有哪些,什么时候开始运行的,哪个用户运行的,占用了多少资源. 参数: -e     显示所有进程 -f     显示所有字段(UID,PPIP,C,STIME字段) -a     

  • Vbs脚本经典教材(最全的资料还是MSDN)

      -为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改名.删除,也许你每天启动计算机第一件事情就是打开WORD,切换到你喜爱的输入法进行文本编辑,同时还要播放优美的音乐给工作创造一个舒心的环境,当然也有可能你经常需要对文本中的某些数据进行整理,把各式各样的数据按照某种规则排列起来--.这些事情重复.琐碎,使人容易疲劳. 第三方软件也许可以强化计算机的某些功能,但是解决这些重复劳动往往事倍功半,

随机推荐