Solved

InnertHTML Issue with recognizing tags

Posted on 2009-05-05
4
326 Views
Last Modified: 2012-05-06
Hi guys,
I have an issue with tr and td tags not being recognized.The following code does not seem to recognize the tr and td tags, so im not quite getting the formatting in a table properly.
Im not sure if this is because of the way the Results.InnerHTML is set?
Any help greatly appreciated.
<head>
<title>Enumerate Service Pack on Remote Computers</title>
<HTA:APPLICATION 
     APPLICATIONNAME="Enumerate Service Pack on Remote Computers"
     SCROLL="yes"
     SINGLEINSTANCE="yes"
     WINDOWSTATE="normal"
>
<style type="text/css">
 
html {
font-family:arial;
font-size:smaller;
 
}
 
table {
border-collapse:collapse;
border:solid 1px black;
font-family:arial;
font-size:0.8em;
}
 
tr, td, th {
border-collapse:collapse;
border-style:solid;
}
 
td { border-width: 1px; }
 
 
</style>
 
 
</head>
<script language="vbscript">
Sub Window_onLoad
	intWidth = 600
	intHeight = 480
	Me.ResizeTo intWidth, intHeight
    Me.MoveTo ((Screen.Width / 2) - (intWidth / 2)),((Screen.Height / 2) - (intHeight / 2))
End Sub
 
Sub GetServicePack
	run_button.disabled = True
	ComputerListFile.disabled = True
	Const ForReading = 1
	Const ForWriting = 2
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	If ComputerListFile.Value <> "" Then
		If objFSO.FileExists(ComputerListFile.Value) = True Then
			Set List = objFSO.OpenTextFile(ComputerListFile.Value, ForReading)
			
			Results.InnerHTML = ""
			Results.InnerHTML = Results.InnerHTML &"<table width='40%' border=1 bgcolor='white'><th style='background:c0c0c0'>" & "<b>System</b>" & "</th><th style='background:c0c0c0'>" & _
			"<b>Service Pack</b>"
 
			Do Until List.AtEndOfStream
				strComputer = List.ReadLine
				If Ping(strComputer) Then
 
					Set objWMIService = GetObject("winmgmts:" _
					& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
					Set colSpack = objWMIService.ExecQuery _
					("Select * from Win32_OperatingSystem")
					For Each objSpack in colSpack
						strSpack = objSpack.ServicePackMajorVersion
					Next
 
					Results.InnerHTML =  Results.InnerHTML &"<tr><td width='40%' border=1>" &strComputer &"</td><td>" &strSpack &"</td></tr><br>"
 
					'Results.InnerHTML =  Results.InnerHTML & "<tr><td>" & strComputer & "</td><td>" & strSpack & "</td></tr>"
 
				Else
 
					Results.InnerHTML =  Results.InnerHTML &"<tr><td>"& strComputer & "</td><td style='background:black'><font color='red'>Unreachable</font></td></tr><br>"
					
				End If
			Loop
Results.InnerHTML =  Results.InnerHTML &"</table>"
			List.Close	
			
			'Results.InnerHTML =  Results.InnerHTML &"</table>"
		Else
			MsgBox "File does not exist: " & ComputerListFile.Value
		End If
	Else
		MsgBox "Please specify a file name."
	End If
	run_button.disabled = False
	ComputerListFile.disabled = False
 
End Sub
	
Function Ping(strComputer)
	Dim objShell, boolCode
	Set objShell = CreateObject("WScript.Shell")
	boolCode = objShell.Run("Ping -n 1 -w 300 " & strComputer, 0, True)
	If boolCode = 0 Then
		Ping = True
	Else
		Ping = False
	End If
End Function
 
</script>
 
<body>
<input type="button" value="Get Service Pack" name="run_button" onClick="GetServicePack">
<input type="file" name="ComputerListFile"> <br><br>
<span id = "Results"></span>
</body>
</html>

Open in new window

0
Comment
Question by:Simon336697
  • 3
4 Comments
 
LVL 14

Expert Comment

by:rejoinder
ID: 24308213
Please give this a try...
<head>
<title>Enumerate Service Pack on Remote Computers</title>
<HTA:APPLICATION 
     APPLICATIONNAME="Enumerate Service Pack on Remote Computers"
     SCROLL="yes"
     SINGLEINSTANCE="yes"
     WINDOWSTATE="normal"
>
</head>
<script language="vbscript">
Sub Window_onLoad
    intWidth = 600
    intHeight = 480
    Me.ResizeTo intWidth, intHeight
    Me.MoveTo ((Screen.Width / 2) - (intWidth / 2)),((Screen.Height / 2) - (intHeight / 2))
End Sub
 
Sub GetServicePack
    run_button.disabled = True
    ComputerListFile.disabled = True
    Const ForReading = 1
    Const ForWriting = 2
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    If ComputerListFile.Value <> "" Then
        If objFSO.FileExists(ComputerListFile.Value) = True Then
            Set List = objFSO.OpenTextFile(ComputerListFile.Value, ForReading)
            strHTML = "<table width=40% border=1 bgcolor=""white""><tr><td style=""background:c0c0c0""><b>System</b></td><td style=""background:c0c0c0""><b>Service Pack</b></td></tr>"
            Do Until List.AtEndOfStream
                strComputer = List.ReadLine
                If Ping(strComputer) Then
                    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
                    Set colSpack = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
                    For Each objSpack in colSpack
                        strSpack = objSpack.ServicePackMajorVersion
                    Next
                    strHTML = strHTML & "<tr><td>" & strComputer & "</td><td>" & strSpack & "</td></tr>"
                Else
                    strHTML = strHTML & "<tr><td>" & strComputer & "</td><td style=""background:black""><font color=""red"">Unreachable</font></td></tr>"
                End If
            Loop
            Results.InnerHTML = strHTML &"</table>"
msgbox Results.InnerHTML
            List.Close
        Else
            MsgBox "File does not exist: " & ComputerListFile.Value
        End If
    Else
        MsgBox "Please specify a file name."
    End If
    run_button.disabled = False
    ComputerListFile.disabled = False
End Sub
	
Function Ping(strComputer)
    Dim objShell, boolCode
    Set objShell = CreateObject("WScript.Shell")
    boolCode = objShell.Run("Ping -n 1 -w 300 " & strComputer, 0, True)
    If boolCode = 0 Then
        Ping = True
    Else
        Ping = False
    End If
End Function
 
</script>
 
<style type="text/css">
html {font-family:arial;font-size:smaller;}
table {border-collapse:collapse;border:solid 1px black;font-family:arial;font-size:0.8em;}
tr, td, th {border-collapse:collapse;border-style:solid;}
td { border-width: 1px; }
</style>
<body>
<input type="button" value="Get Service Pack" name="run_button" onClick="GetServicePack">
<input type="file" name="ComputerListFile"> <br><br>
<span id="Results" name="Results"></span>
</body>
</html>

Open in new window

0
 
LVL 14

Accepted Solution

by:
rejoinder earned 500 total points
ID: 24308227
Please remove line 42;
msgbox Results.InnerHTML
I was using that to test some things out.
0
 
LVL 1

Author Comment

by:Simon336697
ID: 24322280
thanks so much rejoinder.
0
 
LVL 14

Expert Comment

by:rejoinder
ID: 24322316
Glad to help out and thanks for the points :-)
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is pretty cool.  The purpose of this VB Script is to help you document where JAR (Java ARchive) files and specifically java class files are located so that you can address issues seen with a client or that you can speak intelligently with a dev…
Over the years I have built up my own little library of code snippets that I refer to when programming or writing a script.  Many of these have come from the web or adaptations from snippets I find on the Web.  Periodically I add to them when I come…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

808 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