cultivate passion for everything else that goes on around programming

Monthly Archives: August 2010

Visual Studio 2008 Team Explorer Problem after Windows Update

After a Windows Update from 26.08, Team Explorer stopped working. I received the following error:

TF30421: Team Explorer could not connect to Team Foundation server <servername>. The server may be offline
or the network is unavailable. Contact your Team Foundation Server Administrator to confirm that the server is available on the network.
Use the connect to Team Foundation Server Command on the Tools menu to retry your connection to the server.
The server returned the following error:Unable to cast COM object of type ‘System.__ComObject’ to interface type ‘Microsoft.VisualStudio.OLE.Interop.IServiceProvider’. This operation failed
because the QueryInterface call on the COM component for the interface with IID
‘{6D5140C1-7436-11CE-8034-00AA006009FA}’ failed due to the following error: No such
interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

After some Internet research I found out that it might be related to some unregistered DLLs, as mentioned here. But following the steps described did not help. I searched a little bit more, and found this article:

Note that the article is from August 2009 and it mentions a completely different problem! But I saw that registering “%ProgramFiles%\Internet Explorer\ieproxy.dll” might help. So I did that using Command Prompt, run as Administrator, then rebooted. After rebooting, Team Explorer worked fine again.

Does anybody know why Team Explorer relies on Internet Explorer? 🙂

Debugging .NET source code

TI finally managed to debug .NET source code. I needed this because a client mentioned getting the following error:

   1: System.NullReferenceException: Object reference not set to an instance of an object.
   2:    at System.Data.DataColumn.IsNotAllowDBNullViolated()
   3:    at System.Data.DataTable.EnableConstraints()
   4:    at System.Data.DataTable.set_EnforceConstraints(Boolean value)
   5:    at System.Data.DataTable.EndLoadData()
   6:    at System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
   7:    at System.Data.Common.DataAdapter.Fill(DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
   8:    at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   9:    at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
  10:    at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)

This of course is an exception thrown inside the .NET assemblies and I was curious about the possible cause. So I followed this topic here: Configuring Visual Studio to Debug .NET Framework Source Code and was able to check out the code inside System.Data.DataTable. Of course, nothing led to a possible NullReferenceException.

Then I assumed there must be a different problem. I asked the client to run the following .NET version detector: .NET Version Detector

Client’s version:


My version:


So the obvious choice here is to ask the client to update their .NET 2.0 framework to SP2 🙂