A WebLog (Blog) is simply an online version of a diary (The Diary of Anne Frank) or journal (The Journals of Henry David Thoreau) that is hosted or published on a public facing web site. The popularity of blogs has skyrocketed in the last year albeit some claim that blogs are just a passing fad and the bubble will soon pop for sites such as LiveJournal, MySpace, Blogger and BlogSpot. This may prove to be true in time however technology sites such as http://myitforum.com/cs2 and http://blogs.msdn.com are more focused on providing information as opposed to sharing dairies, journals or pictures like many of the mainstream sites mentioned above do. Blog pages like user forums or E-Mail distribution lists will be around for quite some time to come because of the sharing of information they provide to their respective audiences.
Note: The average Blogger (One who has a Blog) is a suburban Male aged 18-29 who Blogs to express their creativity. - Source: www.pewinternet.org "PIP Bloggers Report July 19 2006.Pdf"
Rod Trent has graciously provided the ability for you to create a Blog on myITforum where you can rant and rave, chastise or celebrate or just feed your creative instincts. If you are a myITforum columnist or just a myITforum user you could have a Blog to call your own by sending Rod an E-Mail at: rodtrent@myITforum.com and you can start posting to your personal, but not too personal Blog within hours.
Since myITforum is a technology based web site your Blog content emphasis ‘should’ contain information that is relevant to the topics covered by myITforum which is basically anything Tech-Geeks are interested in. Presently there are more than 75 myITforum Blog pages in use however if you want to “Run with the big dogs” as the saying goes you have some mighty big shoes to fill as far as posting as is evident in the list that follows.
The Top Five Most Prolific myITforum WebLog Posters:
1. Rod Trent at myITforum.com (4800 +)
http://myitforum.com/cs2/blogs/rtrent/default.aspx
2. Chris Mosby at myITforum.com (1390 +)
http://myitforum.com/cs2/blogs/cmosby/default.aspx
3. John (Gormly) at myITforum.com (1330 +)
http://myitforum.com/cs2/blogs/jgormly/default.aspx
4. Ron Crumbaker at myITforum.com, Inc. (1270 +)
http://myitforum.com/cs2/blogs/rcrumbaker/default.aspx
5. Harry Waldron - My IT Forums Blog (840 +)
http://myitforum.com/cs2/blogs/hwaldron/default.aspx
For information on becoming a regular columnist for myITforum and to see a complete listing of the available article sections or topics you can Blog about see the post below:
Open Call For New myITforum Columnist And Contributors
http://myitforum.com/cs2/blogs/dhite/archive/2006/11/12/open-call-for-new-myitforum-columnist-and-contributors.aspx
This SQL query will simply count the number of records in the SMS SQL database for each table. You can modify it to report only the records found for a specific table by adding the line after the Where clause:
And SysObjects.Name = 'SoftwareFile'
SQL Query:
Select
SysObjects.Name 'Table Name',
Max (SysIndexes.Rows) 'Row Count'
From SysObjects, SysIndexes
Where SysObjects.XType = 'U'
And SysIndexes.Id = Object_Id(SysObjects.Name)
And SysIndexes.Rows <> 0
Group by SysObjects.Name, SysIndexes.Rows
This Vbs script will take a machine name as specified by the Input Box and enumerate all of the applications found in the Win32_Product class and send the information to an Excel spreadsheet.
Note: The Win32_Product class only lists software that was installed with Windows Installer.
Vbs Script:
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add
intRow = 2
objExcel.Cells(1, 1).Value = "Name"
objExcel.Cells(1, 2).Value = "Caption"
objExcel.Cells(1, 3).Value = "Description"
objExcel.Cells(1, 4).Value = "Vendor"
objExcel.Cells(1, 5).Value = "Version"
objExcel.Cells(1, 6).Value = "Identifying Number"
objExcel.Cells(1, 7).Value = "Install Location"
strComputer = InputBox ("Enter Machine Name")
On Error Resume Next
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Product")
For Each objItem in colItems
Do
objExcel.Cells(intRow, 1).Value = objItem.Name
objExcel.Cells(intRow, 2).Value = objItem.Caption
objExcel.Cells(intRow, 3).Value = objItem.Description
objExcel.Cells(intRow, 4).Value = objItem.Vendor
objExcel.Cells(intRow, 5).Value = objItem.Version
objExcel.Cells(intRow, 6).Value = objItem.IdentifyingNumber
objExcel.Cells(intRow, 7).Value = objItem.InstallLocation
Loop Until objRecordset.EOF
intRow = intRow + 1
Next
objExcel.Range("A1:G1").Select
objExcel.Selection.Interior.ColorIndex = 19
objExcel.Selection.Font.ColorIndex = 11
objExcel.Selection.Font.Bold = True
objExcel.Cells.EntireColumn.AutoFit
Wscript.Echo "Done"
Here you will find a simple guideline for calculating the number of accounts required for an SMS 2003 installation.
Note: The accounts that the SMS 2003 installation process creates depends on what security mode you have selected. If you selected standard security more accounts are created than you would have if you selected advanced security. Therefore some of the accounts below may or may not exist.
SMS Client Network Connection Account
The rule here is that you should have 1 account multiplied by the number of sites in your domain. For example if you have two SMS sites you would calculate it as 1 x 2 = 2.
SMS Server Network Connection Account
Here you should have 1 account multiplied by the number of SMS sites that you have. If you have three SMS sites you would calculate it as 1 x 3 = 3
SMS Remote Service Account
You should have 2 accounts multiplied by the number of client access points (CAP’s) per site. This means that if you have five CAPS you would calculate it as 2 x 5 = 10
SMSCliToknAcct& Account
For this account you should have 1 account multiplied by the number of domains that you have. So the calculation for 2 domains would be 1 x 2 = 2
SMS&_DC_Name Account
Here the rule is that you should have 1 account multiplied by the number of Domain controllers (DC’s) in the domain. So the calculation for two DC’s would be 1 x 2 – 2
Here you will find a Wiki list of all the Microsoft Windows Operating System Versions by release date. This information can be useful for writing scripts, SMS queries or even MOM SQL queries.
Name: Windows NT 3.1
Version: 3.1
Released: July 1993
Name: Windows NT 3.5
Version: 3.5
Released: September 1994
Name: Windows NT 3.51
Version: 3.51
Released: May 1995
Name: Windows NT 4.0
Version: 4.0
Released: July 1996
Name: Windows 2000
Version: 5.0
Released: December 1999
Name: Windows XP
Version: 5.1
Released: August 2001
Name: Windows Server 2003
Version: 5.2
Released: March 2003
This PowerShell script will return the Machine name and Client version for all machines that are SMS client machines on the SMS site server that is specified.
Note: Be sure to change XXX to your three letter site code and change SiteServerName to your SMS site server name.
PS1 Script:
Gwmi -Name Root\SMS\Site_XXX -cl SMS_R_System -Comp SiteServerName |
Where {$_.Client -eq "1"} |
Select Name, ClientVersion |
Sort Name
The term “Bug” actually predates computers because it was applied first to engineering and then it was applied to electronics before becoming computer jargon. As far as a computer bug is concerned the term was first used when an actual bug, a moth to be exact, was found to be the problem with an early computer called the Mark II in September of 1947. The bug or moth was found trapped in a relay and was the source of the issues the team was experiencing. Members of the team who were familiar with the electronics term “Bug” took the moth and taped it to their log book with the notation: "Relay #70 Panel F (moth) in relay. First actual case of bug being found."
The First Computer Bug Log Entry
http://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/H96566k.jpg/721px-H96566k.jpg
My friend Ying Li and I have chatted off line and via E-Mail on many occasions about PowerShell scripting in particular and SMS in general for some time now. Recently I invited Ying to become a part of the myITforum community to which he enthusiastically accepted and Rod graciously provided him with a Blog page.
Since that time Ying has posted several great PowerShell and Vbs scripts to his Blog page as well as to the myITforum community website home page. Check out the new kid on the Blog by dropping by his place in space and see what he is up to at the moment.
Ying holds a Master degree of Medicine that he obtained from China before moving to the US in 1996. He is also a 2003 MCSE and has also been an MCSE since NT 4.0. Ying currently lives in Long Island, NY with his wife, daughter and son.
Ying Li - New Kid On The Blog
http://myitforum.com/cs2/blogs/yli628/default.aspx
In a previous post I mentioned that Microsoft’s Chris Lovett who is a Program Manager on the XML team released a free XML editor. Since that time the editor has been updated and released as XML Notepad 2007 (Version 2.1) and remains freeware.
Since I have been editing MOSS 2007 Xml files I find that I am using the new version in place of my preferred editor Ultra Edit for editing existing MOSS 2007 Xml files such as the TimeZone.Xml file. Since MOSS 2007 relies quite heavily on Xml files if you need to modify or otherwise edit its Xml files this free utility is another must have utility available at a great price.
I find that the tree view is quite useful when editing very large Xml files in that the collapsed view allows you to quickly locate the information you are searching for. The new version is also compatible with Windows Vista and has many new features as well as new icons and is built on the .Net framework.
Download XML Notepad 2007
http://www.microsoft.com/downloads/details.aspx?familyid=72d6aa49-787d-4118-ba5f-4f30fe913628&displaylang=en
Microsoft XML Notepad 2006 Post
http://myitforum.com/cs2/blogs/dhite/archive/2006/09/02/Microsoft-XML-Notepad-2006.aspx
In SQL Server 2005 when the SQL server starts up and you have TCP/IP enabled the server instance is by default assigned a TCP/IP port. This port is used to facilitate the exchange of information between the server and the client. If you have multiple instances running each instance is forced to use a different port number and named pipe.
Note: You can change or modify the default port if you have named pipes enabled. See the Books on Line (BOL) for more information on making the changes.
When the SQL server starts the SQL browser service also starts and claims port 1434 after it reads the SQL server registry to identify all of the available instances for the server. It does so by identifying the installed instance(s) and determines which port and named pipe to use. In cases where your SQL server has more than one Network Interface Card (NIC) installed the browser service retrieves the first enabled port that is happens to come upon.
On the client side when the client machine makes a request the client network library sends a User Datagram Protocol (UDP) message back to the SQL server across port 1432 and the SQL browser service sends the client the port or named pipe for the requested instance. Then the client uses its network library to send a request back to the SQL server using the assigned port or named pipe and the communication is established.
This Hta script will take a machine name from an input box and return the machines architecture type to the page.
HTA Script:
<html>
<head>
<title>Don Hite For myITforum</title>
<style>
body{width:120;height:160}
</style>
</head>
<script language="Vbscript">
Sub Window_OnLoad
RunSub
End Sub
Sub RunSub
Document.Body.BgColor="Wheat"
strComputer = InputBox ("Enter Machine name")
Set colItems = objWMIService.ExecQuery("Select * From Win32_Processor")
Select Case objItem.Architecture
Case 0 strArchitecture = "X86"
Case 1 strArchitecture = "MIPS"
Case 2 strArchitecture = "Alpha"
Case 3 strArchitecture = "PowerPC"
Case 6 strArchitecture = "Intel Itanium Processor Family (IPF)"
Case 9 strArchitecture = "x64"
End Select
DataArea.InnerHTML = "The Machine " & UCase(objItem.SystemName) & " Is A " &_
strArchitecture & " Architecture System"
</script>
<body>
<span id="DataArea"></span>
</body>
</html>
This script will take a machine name from a text box and retrieve the windows installer version number for the requested machine.
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
("Select * from CIM_Datafile Where name = 'C:\\Windows\\System32\\Msi.Dll'")
For Each objFile in colFiles
MsgBox UCase(strComputer) & " Windows Installer Version Is : " & objFile.Version
For Christmas my wife bought me “Dark Angel - The Complete First Season” and “Dark Angel - The Complete Second Season” DVD boxed sets. This science fiction television series by James Cameron of Titanic movie fame only ran for two seasons (2000 – 2002) when it was abruptly canceled much to our chagrin. I was pleasantly surprised when I opened my package and saw them all shrink wrapped shiny and new and on Christmas night after the kids and grandkids went home we watched the two hour premier. Each night since I have watched two or three shows after I feed the horses, chickens, goat and our pack of stupid dogs.
The premise of the show is that in the year 2009 a genetically bred super soldier named X5-452 who took the street name of Max (Jessica Alba) escaped from a government genetics compound called Manticore. She escaped with 11 other X5’s all of which were very young children with barcodes embedded on their necks to live “Normal” lives on the outside. Within months of their escape terrorist detonated an electromagnetic pulse weapon above the US. This “Pulse” destroyed most of the computer systems in the US and turned the US into a third world nation overnight.
Ten years later the show picks up the story of Max as she works as a bike messenger for Jam-Pony express delivery with flashbacks to her past and shows how the 19 year old attempts to find her 11 “Brothers and Sisters”. She does this with the aid of a man named Logan Cale (Michael Weatherly) who runs an “Eyes Only” informant network to punish the unjust. She meets Logan when she tries to steal some artwork from him to sell since he is a rich man and probably wouldn’t miss it anyway. When she was caught red handed she escapes by demonstrating her remarkable skills and Logan finds her thorough his informant network. She does tasks for him and his informant network and in return he uses his network to help her find the others while being tracked by Colonel Lydecker (John Savage) a senior Manticore officer who calls them his “Kids”.
I remember that the show was moved from a good television night to a bad television night (Friday) and even though we never missed an episode apparently its ratings dropped and it was canceled by what I believe was the bad time slot change. I was more upset when this show was canceled than I was when another favorite show of ours “Boston Public” was also canceled without warning. Sometimes I think it is just me and the old Hite luck that makes my favorite shows disappear.
I recently told my wife that maybe we shouldn’t watch “House” so much for fear that it will also be canceled. It is bad enough that for the last two seasons House is constantly being preempted by either the baseball playoffs or the obtuse American Idol rubbish which my wife seems to enjoy a little too much. On the other hand “The Simpson’s” which is my all time favorite prime time cartoon is still going strong so maybe it is not me after all.
On the average I don’t watch that much television because I prefer to read alone in peace and quiet with a cup of coffee and maybe with a dog or two in the armchair with me. Other than having MSNBC or CNN on as background noise when I am working I watch very little television but I try to find time to watch the Simpson’s and House each week and Seinfeld reruns on weekdays when I have the time.
Tip: Here are the links to the DVD boxed sets if you are interested. I would suggest that since these boxed sets are a bit on the costly side as all of the television boxed sets seem to be that when you buy them or for that matter anything from Amazon look for the “Used & New” links. These links will provide you with Amazon partner sites where you can buy things such as books and movies marked as used when they are in fact still new and in the box. However you need to read the descriptions carefully because some items are slightly damaged or really are used.
Dark Angel - The Complete First Season
http://www.amazon.com/Dark-Angel-Complete-First-Season/dp/B00005JLJM
Dark Angel - The Complete Second Season
http://www.amazon.com/Dark-Angel-Complete-Second-Season/dp/B00008YGRX
This Vbs will send the file names and their version numbers contained in an MSI file to excel to help document the contents of your MSI packages.
Note: You must include the full path to the Msi file if using the input box as in:
C:\Windows\System32\AdminPak.Msi.
If you prefer to specify the Msi file path within the script comment out the line that reads:
strMsiFile = InputBox ("Enter Msi File Name")
And add the line:
strMsiFile = "C:\Windows\System32\Adminpak.Msi"
objExcel.Cells(1, 1).Value = "File Name"
objExcel.Cells(1, 2).Value = "File Version"
Set objInstaller = CreateObject("WindowsInstaller.Installer")
Set objDatabase = objInstaller.OpenDatabase(strMsiFile, 0)
objQuery = "Select FileName, Version From File"
Set MsiFile = objDatabase.OpenView(objQuery)
MsiFile.Execute()
Set MSIrecords = MsiFile.Fetch
Do While Err.number = 0
objExcel.Cells(intRow, 1).Value = MSIrecords.StringData (1)
objExcel.Cells(intRow, 2).Value = MSIrecords.StringData (2)
Loop
Error.Clear
objExcel.Range("A1:B1").Select
MsiFile.Close
MsgBox "Done"