Jump to content
Sign in to follow this  
Kovitt

_ArrayDisplay

Recommended Posts

Kovitt

Hello,

I am writing a script that Scans Network Computers for current Services, Time, Network Connectivity, number of .dat files, and if the FTP to Inbox, and ADR services are functioning. This is what I have so far but it won't display my arrays. Also Is there anything wrong with my StringReg Exp?

Thanks

#Include <Date.au3>     
  #include <String.au3>   
  #Include <File.au3>     
  #Include <Array.au3>

FileInstall("C:\Documents and Settings\OvittKe\My Documents\scripts\ADR\Names.txt", @ScriptDir & "\", 0)

;     Deletes Previous Records      
FileDelete("FTPQueryResults.txt")   
FileDelete("ADRQueryResults.txt")   
FileDelete("OutputTime.txt")    


Dim $times
Dim $Ntime[500]
Dim $CName[500]
Dim $FTParray[1000]
Dim $ADRarray[1000]
Dim $FTP[1000]
Dim $ADR[1000]
Dim $Ping[1000]
Dim $FTPFiles[1000]
$count = 0
$a = 0
$PC_File = FileOpen("Names.txt",0)
ProgressOn("ADR FTP SCAN", "Percent Complete", "Progress",1,16)
    $Line_Number = _FileCountLines("Names.txt")
While True
        $CompName = FileReadLine($PC_File)
            If @error = -1 Then
                ExitLoop
            EndIf
        $CName[$a] = $CompName 


;--------------------------------------------------------Comp Time-----------------------------------------         
        RunWait(@ComSpec & " /c w32tm /monitor /computers:" & $CompName & " > OutputTime.txt")
        $path = FileOpen("OutputTime.txt",0)
            
                $Net_time = StringRegExp($path, 'NTP:\s*[\+-](.+?)s', 3)
                If @error = 0 then
                $NTime[$a] = $Net_time[0] 
                EndIf
                If @error <> 0 Then
                    $NTime[$a] = "UnAvailable"
                    EndIf

;-----------------------------------------------------------------------------------------------------------
;************************************Services*********************************
Runwait(@ComSpec & " /c sc \\"&$CompName&" query ""FTP to Inbox"" > FTPQueryResults.txt")
    
    $pathFTP = FileOpen("FTPQueryResults.txt",0)
        While True
        $FTPLine = FileReadline($pathFTP)
        if @error = -1 Then
            ExitLoop
        EndIf
        $FTPResult = StringRegExp($FTPLine, "(?i)[^STATE : ] .*", 3)
        If @error = 0 then
        $FTP[$a] = $FTPResult[0]
    Else
        $FTP[$a] = "UnAvailable"
        EndIf
    WEnd
Runwait(@comspec & " /c sc \\"&$CompName&" query adr > ADRQueryResults.txt")
    $pathADR = FileOpen("ADRQueryResults.txt",0)
        While True
        $ADRLine = FileReadline($pathADR)
        if @error = -1 Then
            ExitLoop
        EndIf
        $ADRResult = StringRegExp($ADRLine, "(?i)[^STATE : ] .*", 3)
        If @error = 0 then
        $ADR[$a] = $ADRResult[0]
    Else
        $ADR[$a] = "UnAvailable"
        EndIf
    
WEnd
MsgBox(0,"ADR",$ADR[$a])
;**************************************************************

;[][][][][][][][]Progress Bar[][][][][][][][][][]                                                                                                   
$Percent = ($count / $Line_Number) * 100                                                                                          
$count = $count+1                                                                                                                 
ProgressSet($Percent, "Scanning " & $CompName)                                                                                    
;[][][][][][][][][][][][][][][][][][][][][][][][][][]
;########################## Number of Files in '\c$\adr\data' ##########################
            $Files = _FileListToArray("\\"&$CompName&"\c$\adr\data")
            If @error = 1 Then
            $Files_Re = _FileListToArray("\\"&$CompName&"\c$\adr\data")
                If @error = 1 Then
                    $PingValue = ping($compName) 
                    If $PingValue = 0 Then
                        $Ping[$a] = "Error"
                    Else
                        $Ping[$a] = "Ok"
                    EndIf
                EndIf
        Else
                If @error <> 4 Then
                    $Ping[$a] = "Ok"
                    If $Files[0] >= 10 Then
                        $FTPFiles[$a] = "> 10"
                    Else
                        $FTPFiles[$a] = "Ok"
                    EndIf
                EndIf
            EndIf
            
$a = $a + 1
WEnd
;######################################################################
ProgressOff()
SoundPlay(@WindowsDir & "\media\tada.wav",0)
_ArrayDisplay($FTPFiles[$a])
_ArrayDisplay($Ping[$a])
_ArrayDisplay($ADR[$a])
_ArrayDisplay($FTP[$a])
_ArrayDisplay($NTime[$a])
_ArrayDisplay($CName[$a])

Please Help!! :D

P.S. SOrry the comments are messy.. They don't copy over right..

Edited by Kovitt

Share this post


Link to post
Share on other sites
Champak

If the arrays aren't showing, they prob. aren't there. Check IsArray() to make sure the arrays were created.

EDIT:

Didn't really Go throuGh your code, but Get rid of the [$a] in the arraydisplays.

Edited by Champak

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.