'--Parameters-- "Folder name" #of files **Example "c:\temp" 10 '--Unhealthy Expression-- Property[@Name='State'] Equals BAD '--Healthy Expression-- Property[@Name='State'] Equals GOOD '--Alert Description-- $Data/Context/Property[@Name='ret']$ '--By Tim McFadden-- http://www.scom2k7.com Dim oAPI, oBag, objFSO, objFldr, bSendError, strOut bSendError = False Set oAPI = CreateObject("MOM.ScriptAPI") Set oBag = oAPI.CreateTypedPropertyBag(StateDataType) Set eBag = oAPI.CreateTypedPropertyBag(StateDataType) Set oArgs = WScript.Arguments If oArgs.Count < 2 Then strReturn = "Script aborted. Not enough parameters provided" Call eBag.AddValue("State","BAD") Call eBag.AddValue("ret",strReturn) Call oAPI.Return(eBag) WScript.Quit -1 End If strOut = checkfolder(oArgs(0),int(oArgs(1))) If bSendError Then strReturn = strOut Call oBag.AddValue("State","BAD") Call oBag.AddValue("ret2", objFldr.Files.Count) Call oBag.AddValue("ret",strReturn) Else 'WScript.Echo("GOOD "& vbNewLine & strOut) Call oBag.AddValue("State","GOOD") End If if 0 <> Err.number Then strReturn = "An Error occured: " & Err.Description Call eBag.AddValue("State","BAD") Call eBag.AddValue("ret",strReturn) Call oAPI.Return(eBag) else Call oAPI.Return(oBag) end if Function checkfolder(strfldname,numberfiles) Set objFSO=CreateObject("Scripting.FileSystemObject") Set objFldr=objFSO.GetFolder(strfldname) If objFldr.Files.Count > numberfiles Then checkfolder = numberfiles bSendError = True End If End Function