Solved

VBS Expected Statement?

Posted on 2009-04-01
5
753 Views
Last Modified: 2012-05-06
I'm having an issue on line 21, 2 (Wend) with an Expected Statement

Microsoft VBScript compilation error: Expected statement

This may not have anything to do with Wend but may have something to do with incorrect statement somewhere else in the script I don't know.

Does anybody see anything obvious? What the script does is remote to a server and read the log file. If the log contains the string blahblah, it will send an email notification.

Thi sscript is very helpfull to me so if anybody can help out I would greatly appreciate it and give you 500 points :)
Const ForReading = 1

strlocalPath = "c$\corestreet\authority\logs\rtc-java-0.log"

strBadString = "No CRL available for issuer ID"

'ADD YOUR SERVER NAMES TO THIS ARRAY....

arrServers=Array("server1","server2","server3")

 

'Build the date string to look for... (ie. today's date in the format yyyy.mm.dd)

strDateLookFor = Date Part("yyyy",Date) & "." 

If Date Part("m",Date) < 10 Then strDateLookFor = strDateLookFor & "0" & Date Part("m",Date) 
 

_

	Else strDateLookFor = strDateLookFor & Date Part("m",Date)

If Date Part("d",Date) < 10 Then strDateLookFor = strDateLookFor & ".0" & 
 

Date Part("d",Date) _

	Else strDateLookFor = strDateLookFor & "." & Date Part("d",Date)

 

Set fso = CreateObject("scripting.filesystemobject")

For i = 0 To UBound(arrServers)

	Set objTxt = fso.OpenTextFile("\\" & arrServers(i) & strLocalPath,ForReading)

	While Not objTxt.AtEndOfStream

		strLine = objTxt.ReadLine

		If InStr(strLine,strDateLookFor) > 0 And InStr(strLine,strBadString) Then 
 

sendEmail arrServers(i),strDateLookFor,strBadString

	Wend

Next

 

Set fso = Nothing

Set objTxt = Nothing

 

Sub sendEmail(strServer,strDateLookFor,strBadString)

 

Set objMessage = CreateObject("CDO.Message") 

Const smtpPort = 25

Const sendUsing = 2

Const smtpServer = "yup"

objMessage.To = "yup"

objMessage.From = "yup"

objMessage.Subject = "Log Alert!"

body = "<b>A BAD entry has been found in the log file for server : " & strServer & 
 

"</b><br><br>"

body = body & "Date : " & strDateLookFor & " - " & strBadString

objMessage.HTMLBody = body

 

objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendu
 

sing") = sendUsing 

objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtps
 

erver") = smtpServer

objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtps
 

erverport") = smtpPort 

objMessage.Configuration.Fields.Update

 

objMessage.Send

Set objMessage = Nothing

End Sub

 

Open in New Window Select All

Open in new window

0
Comment
Question by:snyderkv
  • 2
  • 2
5 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 250 total points
ID: 24044258
you are missing a END IF before the WEND
0
 
LVL 67

Assisted Solution

by:sirbounty
sirbounty earned 250 total points
ID: 24044457
or you can run this command altogether since you don't have an else...

If InStr(strLine,strDateLookFor) > 0 And InStr(strLine,strBadString) Then sendEmail arrServers(i),strDateLookFor,strBadString
0
 

Author Comment

by:snyderkv
ID: 24044597
Thanks a ton that worked.

My last error may be too simple to create an all new thread over so if it's obvious to you guys please point it out. I will be waiting for the next couple hours.

Microsoft VBScript compilation error: Syntax error
The line below is the last line in the script that has issues.

Open In New Window Select All
0
 
LVL 67

Expert Comment

by:sirbounty
ID: 24044609
remove line 62 altogether...it's not script code...
0
 

Author Comment

by:snyderkv
ID: 24044662
lol
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

This script will sweep a range of IP addresses (class c only, 255.255.255.0) and report to a log the version of office installed. What it does: 1.)      Creates log file in the directory the script is run from (if it doesn't already exist) 2.)      Sweep…
Not long ago I saw a question in the VB Script forum that I thought would not take much time. You can read that question (Question ID  (http://www.experts-exchange.com/Programming/Languages/Visual_Basic/VB_Script/Q_28455246.html)28455246) Here (http…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now