Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.
Keywords: IP Scanner scan local subnet
AddExtender("wwipg32i.dll") AddExtender("WWW9532I.DLL") ;*************************************************************************** ;** ;** String Init. ;** ;*************************************************************************** :Home Titre="IP_Scanner | By: René Germain (reneg@sogides.com)" Dir=DirGet() CurrentDate=TimeDate() Info=WinSysInfo() ComputerName=ItemExtract(1,Info,@tab) UserName=w95GetUser(@default) IP_From=iniReadpvt("MAIN","IP_From","","%Dir%Data.ini") IP_To=iniReadpvt("MAIN","IP_To","","%Dir%Data.ini") LogFile=iniReadpvt("MAIN","LogFile","","%Dir%Data.ini") RetryValue=1 ;Will Retry to reach the destination for this value. ;*************************************************************************** ;** ;** Dialogue Box ;** ;*************************************************************************** MyDialogFormat=`WWWDLGED,5.0` MyDialogCaption=Titre MyDialogX=60 MyDialogY=76 MyDialogWidth=202 MyDialogHeight=137 MyDialogNumControls=8 MyDialog01=`116,104,64,DEFAULT,PUSHBUTTON,DEFAULT,"Cancel",0` MyDialog02=`20,104,64,DEFAULT,PUSHBUTTON,DEFAULT,"Run",1` MyDialog03=`20,62,158,DEFAULT,STATICTEXT,DEFAULT,"Log FileName: (LogFile.txt)"` MyDialog04=`20,26,36,DEFAULT,STATICTEXT,DEFAULT,"From:"` MyDialog05=`114,24,64,DEFAULT,STATICTEXT,DEFAULT,"To:"` MyDialog06=`20,38,64,DEFAULT,EDITBOX,IP_From,""` MyDialog07=`114,36,64,DEFAULT,EDITBOX,IP_TO,""` MyDialog08=`20,74,158,DEFAULT,EDITBOX,LogFile,"c:\"` ButtonPushed=Dialog("MyDialog") iniwritepvt("MAIN","IP_From", IP_From,"%Dir%Data.ini") iniwritepvt("MAIN","IP_TO", IP_TO,"%Dir%Data.ini") iniwritepvt("MAIN","LogFile", LogFile,"%Dir%Data.ini") ;*************************************************************************** ;** ;** IP Adress validation ;** ;*************************************************************************** If StrLen(IP_From) <> 15 Message(Titre,"The ip adress is not good! Try using this format: 192.168.025.010") Goto Home EndIf If StrLen(IP_To) <> 15 Message(Titre,"The ip adress is not good! Try using this format: 192.168.025.010") Goto Home EndIf ;*************************************************************************** ;** ;** Data Parsing ;** ;*************************************************************************** ComputerIP_1a = StrSub(IP_From, 1,12) ComputerIP_1b = StrSub(IP_From, 13,3) ComputerIP_2a = StrSub(IP_TO, 1,12) ComputerIP_2b = StrSub(IP_TO, 13,3) IPRange = ComputerIP_2b - ComputerIP_1b ;*************************************************************************** ;** ;** Init. log file ;** ;*************************************************************************** Line0="%@CRLF%%@CRLF%%@CRLF%" Line1="rem ***************************************************************************************" Line2="rem *** Current Date: %CurrentDate%" Line3="rem *** Adding on to batch file by user: %UserName%" Line4="rem *** From computer: %ComputerName%" Line5="rem *** IP Scanning Range From:%IP_From% To:%IP_TO%" Line6="rem ***************************************************************************************%@CRLF%" fp=FileOpen("%DIR%temp876.num","WRITE") FileWrite(fp,Line0) FileWrite(fp,Line1) FileWrite(fp,Line2) FileWrite(fp,Line3) FileWrite(fp,Line4) FileWrite(fp,Line5) FileWrite(fp,Line6) FileClose(fp) FileAppend("temp876.num","%DIR%%LogFile%") FileDelete("temp876.num") ;*************************************************************************** ;** ;** Scanning IP Adress ;** ;*************************************************************************** For x = ComputerIP_1b to ComputerIP_2b ComputerIP = StrCat(ComputerIP_1a,x) Display(1,Titre,"Scanning: %ComputerIP%") Ping=ipPing(ComputerIP,5) if Ping == 0 err=ipGetLastErr() Gosub ErrorID fp=FileOpen("%DIR%temp876.num","WRITE") FileWrite(fp,"%ComputerIP%%@TAB%ERROR#1%@TAB%%err%") FileClose(fp) FileAppend("temp876.num","%DIR%%LogFile%") FileDelete("temp876.num") Ping=ipPing(ComputerIP,5) EndIf if Ping == 0 err=ipGetLastErr() Gosub ErrorID fp=FileOpen("%DIR%temp876.num","WRITE") FileWrite(fp,"%ComputerIP%%@TAB%ERROR#2%@TAB%%err%") FileClose(fp) FileAppend("temp876.num","%DIR%%LogFile%") FileDelete("temp876.num") Ping=ipPing(ComputerIP,5) else host=ipAddr2Host(ComputerIP,5) if host == "" Then host = "NoName" fp=FileOpen("%DIR%temp876.num","WRITE") FileWrite(fp,"%ComputerIP%%@TAB%%host%%@TAB%") FileClose(fp) FileAppend("temp876.num","%DIR%%LogFile%") FileDelete("temp876.num") EndIf Next ;*************************************************************************** ;** ;** Writing end of script in log file ;** ;*************************************************************************** CurrentDate=TimeDate() Line1="rem ******************************************************************" Line2="rem *** Date at the end of execution: %CurrentDate%" fp=FileOpen("%DIR%temp876.num","WRITE") FileWrite(fp,Line1) FileWrite(fp,Line2) FileClose(fp) FileAppend("temp876.num","%DIR%%LogFile%") FileDelete("temp876.num") exit ;*************************************************************************** ;** ;** Error ID ;** ;*************************************************************************** :ErrorID Error = err - 11000 Switch Error case 1 err="IP_BUF_TOO_SMALL" break case 2 err="IP_DEST_NET_UNREACHABLE" break case 3 err="IP_DEST_HOST_UNREACHABLE" break case 4 err="IP_DEST_PROT_UNREACHABLE" break case 5 err="IP_DEST_PORT_UNREACHABLE" break case 6 err="IP_NO_RESOURCES" break case 7 err="IP_BAD_OPTION" break case 8 err="IP_HW_ERROR" break case 9 err="IP_PACKET_TOO_BIG" break case 10 err="IP_REQ_TIMED_OUT" break case 11 err="IP_BAD_REQ" break case 12 err="IP_BAD_ROUTE" break case 13 err="IP_TTL_EXPIRED_TRANSIT" break case 14 err="IP_TTL_EXPIRED_REASSEM" break case 15 err="IP_PARAM_PROBLEM" break case 16 err="IP_SOURCE_QUENCH" break case 17 err="IP_OPTION_TOO_BIG" break case 18 err="IP_BAD_DESTINATION" break ;The next group are status codes passed up on status indications to transport layer protocols. case 19 err="IP_ADDR_DELETED" break case 20 err="IP_SPEC_MTU_CHANGE" break case 21 err="IP_MTU_CHANGE" break case 22 err="IP_UNLOAD" break case 23 err="IP_ADDR_ADDED" break case 50 err="IP_GENERAL_FAILURE" break case 255 err="IP_PENDING" break case response ; default case err="IP_GENERAL_FAILURE_MAX_IP_STATUS" break EndSwitch return
Article ID: W14741
Filename: Scan a Local Subnet for IP and Log.txt
File Created: 2001:03:13:16:44:28
Last Updated: 2001:03:13:16:44:28