Many of us on the Team Foundation Server customer support team at Microsoft maintain multiple TFS configurations for testing. One issue I have run up against is changing TFS service account password when my domain account passwords expire. It gets time consuming when you need to update service account and reporting account passwords on 5 or 10 TFS servers.
Consequently, I wrote a batch file to handle this, which is basically a wrapper for TFSAdminUtil. It is designed to be run by accessing the CMD file at a common UNC share from each application tier server (AT). The batch file handles finding the TFS installation folder, the TFS version, TFSAdminUtil, and the TFS service account, and prompts for a new service account password. On TFS 2008, it also prompts for a password for the reporting account, and in TFS 2005 it displays the Report Manager page in Internet Explorer.
There are 2 included VBScript files, which need to be in the same folder as the CMD file. GetAppPoolAccount.vbs finds the account the TFS AppPool runs under, and GetPW.vbs displays the password prompt dialog which is an InputBox. In these VBScript files, I used Lee Harvey's mechanism for more reliably obtaining return values from my VBScript code. See http://my.opera.com/Lee_Harvey/blog/2007/06/03/returning-an-errorlevel-from-wsh-vbscripts on his blog which was my source for this.
The batch file must be run on the AT itself, but you don't need to know the TFS installation folder, service account, or to make a local copy of the batch file and vbs files.
Note that this utility makes changes to your TFS configuration, which could result in disabling your TFS installation. Please evaluate whether it fits your needs before running this on production TFS installations.
Here are basic instructions:
How Do I: Use the Checksum and ExpectedSchema Database Test Conditions Tommy Norman on TFS API: Work...