How to get TFS changesets including workitem details using PowerShell?

Visual Studio Online provides a convenient way to access the data and combine it to provide the users with useful information. This is done via a set of REST APIs for Visual Studio Online.

Although, there are several out-of-the-box queries available which can be used to gather information but there are cases when you want to take it to next level to suit your own needs.

Note that these APIs are also available to on premise Team Foundation Server

This post demonstrates an example of accessing REST API using PowerShell to get the details of all change-sets in a particular project collection.
Further, this change-set data is enhanced with information about the WorkItems linked to the change-sets.

Copy pictures to folder by Year and Date using PowerShell

Yet another attempt to sort out the pictures I have taken over the years.

I decided to have a simple PowerShell script to arrange by files by Year and Month.

The Year and Month of the file is determined by the “DateTaken” property of the file. If this property is missing, the script falls back to the CreationTime of the file.

P.S.: I am yet to make mind weather or not to use Google Photos.

Task services has failed with an unknown exception

While installing SharePoint 2010 on a clean Windows 2008 R2 box, I received the following error:

Task services has failed with an unknown exception
Exception: System.InvalidOperationException: The specified value for the LocStringId parameter is outside the bounds of this enum.

Exception: System.InvalidOperationException: The specified value for the LocStringId parameter is outside the bounds of this enum.
	at Microsoft.SharePoint.Portal.WebControls.StringResourceManager.ConvertLocStringIdToStringFast(LocStringId lsid)
	at Microsoft.SharePoint.Portal.WebControls.StringResourceManager.GetString(LocStringId lsid)
	at Microsoft.Office.Server.ApplicationRegistry.SharedService.ApplicationRegistryServiceInstance.get_TypeName()
	at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.InstallServiceInstanceInConfigDB(Boolean provisionTheServiceInstanceToo, String serviceInstanceRegistryKeyName, Object sharepointServiceObject)
	at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.InstallServiceInstances(Boolean provisionTheServiceInstancesToo, String serviceRegistryKeyName, Object sharepointServiceObject)
	at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.InstallServices(Boolean provisionTheServicesToo)
	at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.Run()
	at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask()

Even after trying multiple Windows restart, SharePoint 2010 Repair procedures nothing really helped. What eventually helped was an un-expected trick posted on one of the MSDN Forums here.

So, what you need to do is REMOVE the registry key at the following location and the re-run the configuration wizard.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\14.0\WSS\Services\_Microsoft.Office.Server.ApplicationRegistry.SharedService.ApplicationRegistryService] 

And also,

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\14.0\WSS\ServiceProxies\Microsoft.Office.Server.ApplicationRegistry.SharedService.ApplicationRegistryServiceProxy]

Happy SharePoint 🙂

Wish you a very happy new year 2015

Time flies and before you know it’s time to start working on your new year resolutions for your next year.

I still have few of them from my last year in my ToDo list, so not much to work on that area this year.

Again, wish you world of happiness now, and throughout the seasons of the coming year 2015.

Happy Neat Year

As usual, JetPack release the yearly report for this blog. And to be honest, it’s been a great year specially for my blog. I got some time spend on writing on a range of topics from technology to management.

Here are some excerpts from the report:

The concert hall at the Sydney Opera House holds 2,700 people. This blog was viewed about 32,000 times in 2014. If it were a concert at Sydney Opera House, it would take about 12 sold-out performances for that many people to see it.


That’s 148 countries in all! Most visitors came from The United States. India & U.K. were not far behind.