Thursday, January 10, 2008

GAC Spelunking

I've been working on a tool based on the .NET 3.5 framework to unify our old software change management tools with TFS. I published the ClickOnce application but of course had forgotten to set the TFS 'Copy Local' references to True. I quickly discovered that there were a number of supporting TFS assemblies that needed to be included in my ClickOnce application manifest so I started a trial and error process of adding them all from C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies. A couple of failed installs later I hit a wall trying to find 9.0 version of Microsoft.TeamFoundation.WorkItemTracking.Proxy.dll. This assembly was in the GAC but not accessible on my file system. I remembered a trick using the SUBST command to map the GAC to a drive.


subst M: c:\Windows\assembly\gac_32

M:\>dir *TeamFoundation.WorkItemTracking*
Volume in drive M has no label.
Volume Serial Number is 9C00-A7F3

Directory of M:\

12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Client
12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Client.Cache
12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Client.DataStore
12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Client.Provision
12/03/2007 12:42 PM Microsoft.TeamFoundation.WorkItemTracking.Client.QueryLanguage
12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Client.RuleEngine
12/03/2007 01:45 PM Microsoft.TeamFoundation.WorkItemTracking.Proxy

0 File(s) 0 bytes
7 Dir(s) 30,894,231,552 bytes free

M:\>cd *Proxy*

M:\Microsoft.TeamFoundation.WorkItemTracking.Proxy>cd 9.0*

M:\Microsoft.TeamFoundation.WorkItemTracking.Proxy\9.0.0.0__b03f5f7f11d50a3a>dir

Volume in drive M has no label.
Volume Serial Number is 9C00-A7F3

Directory of M:\Microsoft.TeamFoundation.WorkItemTracking.Proxy\9.0.0.0__b03f5f
7f11d50a3a

12/03/2007 01:43 PM .
12/03/2007 01:43 PM ..
12/03/2007 01:43 PM 122,880 Microsoft.TeamFoundation.WorkItemTracking.Proxy.dll
1 File(s) 122,880 bytes
2 Dir(s) 30,893,748,224 bytes free

M:\Microsoft.TeamFoundation.WorkItemTracking.Proxy\9.0.0.0__b03f5f7f11d50a3a>


The assembly is now exposed and can be copied to a location that can be referenced by VS2008. Crisis averted.

Monday, January 7, 2008

Media Center

Components
  • Antec New Solution Series NSK2400 Mini Tower Case (Silver) Retail (380W power supply)
  • Intel Core 2 Duo E6300 Conroe Processor 1.86GHz, 1066FSB, LGA775, 2MB Cache Retail
  • Corsair TWIN2X2048-5400C4 2GB DDR2-675 XMS2-5400 Xtreme Performance Memory w/Black Heat Spreader Retail
  • MSI 945GCM5-F Intel Core 2 Duo (Desktop) Socket 775 1066 MHz PC2-5400 (DDR2-667) mATX Motherboard Retail
  • EVGA e-GeForce 7600 GS (256-P2-N549-TX)
  • Hauppauge WinTV-PVR-500 MCE
  • Western Digital Caviar SE16 (750GB OEM)
  • SAMSUNG SH-S203N 20X SATA DVD Burner Black Drive Bulk
  • Vista Ultimate
Notes
  • Assembled with no problem. Well, I was frightened during the attachment of the Intel heatsink / fan. I thought that I was going to snap the mobo into two pieces. Started up with zero problems at all, which I assume is a credit to modern mobo architecture.
  • Divx and Xvid codecs seem to get installed somewhere between BeyondTV 4.4 and 4.7

Problems
  • I initially installed Vista Home Premium. This was a big mistake because it doesn't have Remote Desktop.
  • Live TV is not at the quality that I would prefer. Channels 2-5 come in great, but the other channels seem to experience signal interference. I'm sure that I'll be able to resolve this problem in the future.
  • Haven't experienced any heat-related problems yet, but it is a concern for the summer months. The media center sits in my entertainment center behind a glass door. The only ventilation is through a 1.5" by 6" slit in the back through which wires are run.
Conclusion
I'm really happy that I built this and wish that I had done months ago.