Skip to content

Verify if a process is executing and notificate via e-mail on Windows


A few days ago my friend need a Visual Basic Script to verify if a process is running and if it is send an e-mail. He asked me for help to code it, and I helped him.

Visual Basic Script to verify if a process is running and notify via e-mail.

Verify if a process is running with Visual Basic Script and shows a window if it is.
[code lang="vb"]
set service = GetObject ("winmgmts:")
for each Process in Service.InstancesOf ("Win32_Process")
If Process.Name = processName then
wscript.echo "Notepad running"
End If

Send an e-mail using Visual Basic Script
[code lang="vb"]
Const username = "USERNAME"
Const password = "PASSWORD"
Const smtpServer = ""
Const port = 465
Const secure = True
Const userFrom = "FROM"
Const userTo = "TO"
Const emailSubject = "Subject"
Const emailText = "Text"

'== CODE ==

Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).

Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM

Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = emailSubject
objMessage.From = userFrom
objMessage.To = userTo
objMessage.TextBody = emailText

'==This section provides the configuration information for the remote SMTP server.

objMessage.Configuration.Fields.Item _
("") = 2

'Name or IP of Remote SMTP Servesr
objMessage.Configuration.Fields.Item _
("") = smtpServer

'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item _
("") = cdoBasic

'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item _
("") = username

'Your password on the SMTP server
objMessage.Configuration.Fields.Item _
("") = password

'Server port (typically 25)
objMessage.Configuration.Fields.Item _
("") = port

'Use SSL for the connection (False or True)
objMessage.Configuration.Fields.Item _
("") = secure

'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objMessage.Configuration.Fields.Item _
("") = 60



This two scripts are changed to work together to do what we want and have a config section.

Best Regards,


Published inwindows

One Comment

Leave a Reply

Your email address will not be published. Required fields are marked *