달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

VBS VB Script VB 스크립트
특정 프로세스로 실행되는 프로그램 목록을 텍스트 파일로 찍는 스크립트입니다. 텍스트 파일에 프로세스 이름, PID 및 창 제목을 기록합니다. 사실, 창 제목(프로세스에 파라미터를 달고 실행되는 애플리케이션)을 보고 프로세스의 실행 상태를 모니터링하기 위해 사용하였던 스크립트입니다.


'==========================================================
'Configuration - Host Process Name, Log File
'==========================================================
sProcess = "notepad.exe"
sLogDir = "C:\Dimensiondata\"
sLogFile = "NOTEPAD.Log"
'==========================================================


'Check/Create Log Directory
Set oFSO = CreateObject("Scripting.FileSystemObject")
If oFSO.FolderExists(sLogDir) Then
Else
 oFSO.CreateFolder sLogDir
End If

'Check/Create Log File
If oFSO.FileExists(sLogDir&sLogFile) Then
Else
 oFSO.CreateTextFile sLogDir&sLogFile
End If

'Run Tasklist Command and then Write Result to the Log File
Set LogFile = oFSO.OpenTextFile(sLogDir&sLogFile,2)
sCmd = "cmd /c Tasklist /FO CSV /V /FI "&chr(34)&"ImageName eq "&sProcess&chr(34)&" | Findstr /I "&chr(34)&sProcess&chr(34)
Set objShell = WScript.CreateObject("WScript.Shell")
Set objExecObject = objShell.Exec(sCmd)

LogFile.Write "ProcessName|PID|WindowName"&vbCRLF
tmp = 0

Do While Not objExecObject.StdOut.AtEndOfStream
 sLine = objExecObject.StdOut.ReadLine
 tmpLine = Split(sLine,chr(34))
 LogFile.Write tmpLine(1)&"|"&tmpLine(3)&"|"&tmpLine(17)&vbCRLF
Loop

LogFile.Close
Set oFSO = Nothing
Set objExecObject = Nothing
Set objShell = Nothing


:
Posted by 커널64