CKSDev for Visual Studio 2012 version 1.2 Released

CKSLogo
The 1.2 version has just been released. It contains loads more features you had available in VS2010. All of the other features will be coming over the coming weeks as personal time allows. As you can imagine it’s no mean feat to port all of the existing features and support multiple SharePoint versions. The code base is also on a diet as code bloat was getting a little bit crazy as the tools evolved over the past 4 years.
 
You can find CKS: Development Tools Edition on CodePlex at http://cksdev.codeplex.com.
 
Download the extension directly within VS2012 from the extension manager or visit the Visual Studio Gallery.
We’re still looking for extension ideas so please post in the CKS Dev Discussions anything you think would make life better for SharePoint developers.
 

CKS Dev Feature highlights

Environment:
  • Copy Assembly Name – From the context menu of a SharePoint project you can now get the full assembly name copied to the clipboard.
  • Cancel adding features – Automatic cancellation of new SPIs being added to features. You can turn this off via the CKSDev settings options.
  • Find all project references – Find where a SPI/Feature is being used across the project from the project context menu.
  • Activate selected features – Setup which package features you want to auto-activate from the project context menu.
Exploration
  • No new features
Content
  • ASHX SPI template – Produces a full trust ASHX handler.
  • Basic Service Application template – Produces a full trust basic service application.
  • Banding SPI Template – Produces a full collection of SP2010 branding elements baseline items.
  • Contextual Web Part SPI template – Produces a contextual ribbon enabled web part.
  • WCF Service SPI template – Produces a full trust WCF Service endpoint.
  • Web template SPI template – Produces a SP2010 web template.
Deployment
  • Improvements to Quick Deploy – Performance improvements with a switch from calling into GACUtil.exe and returning to direct GAC API calls to improve performance. Also removal of ‘custom tokenisation’ for now until a more performant version is tested.
  • Quick deploy GAC/Bin deployment configuration – A deployment configuration which runs the pre-deployment command line, recycles the application pool, copies the assemblies to either the BIN or GAC depending on their packaging configuration, and runs the post-deployment command line.
  • Quick deploy Files deployment configuration – A deployment configuration which runs the pre-deployment command line, recycles the application pool, copies the SharePoint artefacts to the SharePoint Root, and runs the post-deployment command line.
  • Quick deploy all deployment configuration – A deployment configuration which runs the pre-deployment command line, recycles the application pool, copies the assemblies to either the BIN or GAC depending on their packaging configuration, copies the SharePoint artefacts to the SharePoint Root, and runs the post-deployment command line.
  • Upgrade deployment configuration – A deployment configuration which runs the pre-deployment command line, recycles the application pool, upgrades the previous version of the solution, and runs the post-deployment command line.
  • Attach To IIS Worker Processes Step – Which attaches the debugger to the IIS Worker process during deployment.
  • Attach To OWS Timer Process Step – Which attaches the debugger to the OWS Timer process during deployment.
  • Attach To SPUC Worker Process Step – Which attaches the debugger to the User Code process during deployment.
  • Attach To VSSPHost4 Process Step – Which attaches the debugger to the Visual Studio deployment process during deployment.
  • Copy Binaries Step – Copies the assemblies during deployment to either Bin or GAC.
  • Copy To SharePoint Root Step – Copies the files during deployment to the SharePoint Root.
  • Install App Bin Content Step – Copies the files to the App Bin folder during deployment.
  • Install Features Step – Installs the features during deployment.
  • Recreate Site Step – Recreates the deployment targeted site during deployment.
  • Restart IIS Step – Restarts IIS during deployment.
  • Restart OWS Timer Service Step – Restarts The SharePoint Timer service during deployment.
  • Upgrade Solution Step – Upgrades the solution during deployment.
  • Warm Up Site Step – Calls the site to get SharePoint to warm it up during deployment.
To see more details and the full feature list visit http://cksdev.codeplex.com/documentation.
 

Visit the CodePlex site for more information about the features and release.

Share and Enjoy and thanks for the continued support

Custom SharePoint Item and Project Template gotchas for VS2012

VS2012Logo

This post is a quick brain dump of some of the challenges I’ve been working through updating CKSDev to work with Visual Studio 2012.

Item Templates

 

You can extend the SharePoint Visual Studio tooling in many different ways. One of which is by creating new Item Templates. Item templates are the code templates which appear in the ‘add new’ dialog in the solution project. Microsoft wrote several good walkthroughs http://msdn.microsoft.com/en-us/library/vstudio/ee256697(v=vs.110).aspx as an example.

In Visual Studio 2010 the SharePoint items were grouped in a basic ‘SharePoint’ category and deploying them via a VSIX package was actually dead simple. Edit the CSProj and replace this VSTemplate element with the following XML, and then save and close the file.

<VSTemplate Include="ItemTemplate.vstemplate">
<OutputSubPath>SharePoint\SharePoint14</OutputSubPath>
</VSTemplate>

The OutputSubPath element specifies additional folders in the path under which the item template is created when you build the project. The folders specified here ensure that the item template will be available only when customers open the Add New Item dialog box, expand the SharePoint node, and then choose the 2010 node.

So that worked fine in Visual Studio 2010 for SharePoint 2010. CKSDev for VS2010 had some smarts under the covers for packaging, but also followed this basic process.

So why is this an issue for Visual Studio 2012????

Well as you can see Microsoft moved the items into a new category called ‘Office/SharePoint’

image

In true Lt Gorman style (Aliens reference when the troops realise they can’t fire the pulse rifles under the reactor)

SO??, So what?

Rather then setting off a thermo-nuclear explosion this just causes a real headache for custom template VSIX packaging.

Each VSTemplate item in your solution has a property called ‘Category’, this is where you can tell VS to package that template under a specific category. Great so all you have to do is match the path in the new item dialog. Yes in theory.

The challenge comes that the VS/MSBuild bits behind the scenes understand a forward slash as a new folder. So you end up with Office with a sub folder of SharePoint. Not what you wanted. Sad smile

Ok so what next?

Well another thing to try is to match the OOTB folder path for the native MS templates. They live under “C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ItemTemplates\CSharp\Office SharePoint\1033”

So setting the ‘Category’ to ‘Office SharePoint’ should work right? Wrong more Crying face ensue as this time the space is encoded to %20 and the templates don’t show up at all.

This process of elimination had by this point taken well over two hours and was getting somewhat frustrating.

So as i mentioned earlier CKSDev already has a subtle difference to its packaging. This is due to it being distributed via the Visual Studio Gallery. The VS gallery has some nasty folder length checks (less that a combined 256) which mean the CKSDev templates are compacted folder and name wise to be as short as possible. The VS Gallery rules don’t understand the fact the tools couldn’t install on XP and check for the length anyway and reject if over 256.

Another example of this technique in action is here at Aaron Marten’s blog article which explains how this works.

The CKSDev packaging uses some MSBuild stuff to create an ‘I’ for item templates and ‘P’ for project templates during build. The VSIX then picks them up from there.

The assets section of the VSIX looks like this:

<Assets>
    <Asset Type="Microsoft.VisualStudio.MefComponent" Path="|CKS.Dev11;AssemblyProjectOutputGroup|" />
    <Asset Type="SharePoint.Commands.v4" Path="|CKS.Dev11;SP2010CommandProjectOutputGroup|" />
    <Asset Type="SharePoint.Commands.v5" Path="|CKS.Dev11;SP2013CommandProjectOutputGroup|" />
    <Asset Type="Microsoft.VisualStudio.VsPackage" Path="|CKS.Dev11;PkgdefProjectOutputGroup|" />
    <Asset Type="Microsoft.VisualStudio.Assembly" Path="|CKS.Dev11;AssemblyProjectOutputGroup|" />
    <Asset Type="Microsoft.VisualStudio.ProjectTemplate"
           d:Source="Project"
           d:ProjectName="CKS.Dev11"
           d:TargetPath="p"
           Path="P"
           d:VsixSubPath="P" />
    <Asset Type="Microsoft.VisualStudio.ItemTemplate"
           d:Source="Project"
           d:ProjectName="CKS.Dev11"
           d:TargetPath="I"
           Path="I"
           d:VsixSubPath="I" />
  </Assets>

So the solution was to modify the MSBuild elements for the CSProj file

<Target Name="GetVsixTemplateItems">
   <ItemGroup>
     <VSIXSourceItem Include="@(IntermediateZipItem)">
       <VSIXSubPath>I\%(IntermediateZipItem.Language)\$(ItemTemplateFolderPath)\%(IntermediateZipItem.Culture)</VSIXSubPath>
     </VSIXSourceItem>
   </ItemGroup>
   <ItemGroup>
     <VSIXSourceItem Include="@(IntermediateZipProject)">
       <VSIXSubPath>P\%(IntermediateZipProject.Language)\%(IntermediateZipProject.OutputSubPath)\%(IntermediateZipProject.Culture)</VSIXSubPath>
     </VSIXSourceItem>
   </ItemGroup>
</Target>

 

The item templates are using a variable declared with the category (aka the folder path) desired, whereas the projects are declared using the ‘Category’ in the properties window of the VSTemplate item. (this is the output sub path for those interested).

The path has to be declared in another element as it contains a space.

<PropertyGroup>
    <ItemTemplateFolderPath>Office SharePoint\CKSDev</ItemTemplateFolderPath>
  </PropertyGroup>

All that together gives the desired effect of all the CKSDev items appearing inside the right OOTB category.

image

image

Ok so now everything is sitting in the desired place. As with a lot of CKSDev coding its the little things like this which take so long. Understanding Visual Studio, MSBuild and SP API’s all in a days work Smile with tongue out

Project templates

 

So with the information above the project template settings are actually a lot easier.

Simply set your category to ‘Office\SharePoint Solutions’ As you actually want it to appear in a sub folder this time.

image

I hope this saves someone time and headaches Open-mouthed smile

CKSDev for Visual Studio 2012 version 1.0 Released

CKSLogo

Since 2009 CKSDev has been available to SharePoint 2010 developers to aid the creation of SharePoint solutions. The project extended the Visual Studio 2010 SharePoint project system with advanced templates and tools. Using these extensions you were able to find relevant information from your SharePoint environments without leaving Visual Studio. You experienced greater productivity while developing SharePoint components and had greater deployment capabilities on your local SharePoint installation.

The Visual Studio 2012 release of the MS SharePoint tooling supports both SharePoint 2010 and 2013. Our aim for CKSDev was to follow this approach and provide one tool to support both SharePoint versions from within Visual Studio 2012.

The VS2012 version has just been released. It contains the core quick deployment and server explorer features you had available in VS2010. All of the other features will be coming over the coming weeks as personal time allows. As you can imagine it’s no mean feat to port all of the existing features and support multiple SharePoint versions. The code base is also on a diet as code bloat was getting a little bit crazy as the tools evolved over the past 4 years.

You can find CKS: Development Tools Edition on CodePlex at http://cksdev.codeplex.com.

Download the extension directly within VS2012 from the extension manager or visit the Visual Studio Gallery.

We’re still looking for extension ideas so please post in the CKS Dev Discussions anything you think would make life better for SharePoint developers.

CKS Dev Feature highlights

Environment:
  • Copy assembly name so no more need to use reflector to get the full strong name.
Exploration
  • New Server Explorer nodes to list feature dependancies, site columns, web part gallery, style library, theme gallery.
  • Enhanced import functionality for web parts, content types, themes.
  • Create page layout from content type (publishing).
  • Copy Id.
Content
  • Coming Soon…
Deployment
  • Quick deploy to copy artefacts into the SharePoint root without the need for a build.
  • Deployment steps Coming Soon..

To see more details and the full feature list visit http://cksdev.codeplex.com/documentation.

Visit the CodePlex site for more information about the features and release.

Share and Enjoy and thanks for the continued support

CKSDev Adding keyboard shortcuts

CKSDevShortcuts

One of the community submitted feature requests was for keyboard shortcuts for the CKSDev menu items. Tobias Zimmergren raised a good suggestion that rather than use the established WSPBuilder versions it would be preferable to use a new set. This makes perfect sense as we always aim for CKSDev to play nice with other extensions.

The job was made easier as Carsten is part of the CKSDev team as well as the author of WSPBuilder so he was able to point me in the direction of the existing WSPBuilder shortcuts.

The WSPBuilder shortcuts are:

Ctrl+Shift+Alt+B, B >> Build WSP
Ctrl+Shift+Alt+B, D >> Deploy WSP
Ctrl+Shift+Alt+B, P >> Upgrade WSP
Ctrl+Shift+Alt+B, U >> Uninstall WSP
———————————————-
Ctrl+Shift+Alt+B, C >> Copy to Root
Ctrl+Shift+Alt+B, G >> Copy to GAC
———————————————-
Ctrl+Shift+Alt+B, R >> Recycle AppPools
Ctrl+Shift+Alt+B, T >> Restart Timer Service
Ctrl+Shift+Alt+B, F >> Create Deployment Folder
Ctrl+Shift+Alt+B, A >> Attach to IIS Worker Processes

Wictor Wilén suggested some alternative shortcuts which are:

Ctrl+Shift+Alt+C
Copy to SharePoint Root: +C
Copy to GAC\Bin: +G
Copy Both: +B
———————————————-
And Ctrl+Shift+Alt+R
Recycle Project AppPool; +R
Recycle all AppPools: +A
Restart IIS: + I
Restart User Code process: +U
Restart Timer process: +T
———————————————-
And for these use Ctrl+Shift+Alt+A
Attach to All SharePoint processes: +S
Attach to IIS Worker processes: +I
Attach to User Code process: +U
Attach to Timer process +T
Attach to VSSHost4 process: +V

Armed with the proposed shortcuts I set out to implement them into the codebase. The VSPackage infrastructure provides a declarative method to define shortcuts. The ‘vsct’ file is where the magic happens. What you have to add are the KeyBinding elements with the relevant information. The KeyBinding element defines the command to associate the keys too, the editor type (The value for the default Visual Studio editor is “guidVSStd97″) and the keys combined to form the shortcut. The image below gives a couple of examples for the ‘Attach to processes’ commands.

image

The commands are already implemented and registered in the ‘EventHandlerManager’ class. The key bindings will invoke the same logic as the menu item clicks. There is also a really good blog post by DotNeteers which provides lots of walkthrough information about the VSPackage vsct file and the capabilities within it.

Due to the fact there are several commands which appear on different menu structures I had to introduce some kind of consistent second key stroke mapping:

So the way it’ll map is

  • Solution > Shift
  • Selection > Ctrl
  • Context > Just the letter
  • File > Shift Ctrl
  • Folder > Shift Ctrl Alt

These new shortcuts will be available with the release of version 1.2 which is available soon.

I’m speaking at SharePoint Saturday India

SPSIndiaLogo
For those of you who missed my session at SharePoint Saturday UK at the NEC earlier this month you’ve got another chance to catch it at the upcoming SPSIndia.
Visit http://sharepointsaturday.org/india/default.aspx to register for this free event.
 
I’ll be covering the CKS Development Tools with some code demos and covering an overview of becoming productive as a developer with the tooling.
 
The presentation will cover the history of SharePoint tools, what CKSDev brings to the party and a live demo scenario to see how to become productive using the tools.

SharePoint Saturday

SPSUK
image
 

Saturday 2nd October saw the UK’s first SharePoint Saturday event organised by Brett Lonsdale of Lightning Tools, Mark Mcrae and Tony Pounder of Intelligent Decisioning Ltd.

From the outset this event looked on paper to be an excellent collection of the SharePoint community’s speakers with special trips from the US by Mark Miller of EUSP fame and Joel Oleson. Best of all this event is FREE!

I was lucky enough to secure one of the five speaking slots on the Development track for the event.

After weeks of prepping and co-ordinating topics with other dev track speakers the agenda lined up to give a solid flavour of SharePoint 2010 development.

So the day arrived……..

image

Keynote

 

Mark Miller opened proceedings with his ‘Hobbits, Wizards and Elves’. Taking a trip through middle earth Mark introduced the key people in the SharePoint community in various areas from UI to development. With a live video from Laura Rodgers (not a developer) @wonderlaura for those with Twitter.

Following Mark came Joel, with some videos from YouTube trying to express the complex nature of the job we do. Canvassing opinion not everyone seemed to get what Joel was trying to say with the videos. My interpretation was that working in SharePoint was complex and often blurred the lines between traditional job role boundaries. The juggling metaphor indicating keeping many ideas, tasks in your mind while building upon SharePoint. The guy running on water I think was a little cheeky reference to believe in what you do, changing organisations ways of working.

 
image

Automated UI Testing

 

First up was Andrew Woodward presenting Automated UI testing. Andrew is a keen advocate of test driven development and testing techniques for SharePoint and Non-SharePoint projects. He ran through the difficulty in test driven development SharePoint projects. He observed the commerical benefit is felt only when cost of implementing these time consuming techniques out weighs the cost benefits.

So to get testing in a SP2010 space he focused on Automated UI testing. This click and record process within Visual Studio Ultimate (we don’t have this on all dev images) allows testing of the UI. While slightly more brittle than a unit test it would quickly add value to a project quality marker.

One final observation was that the best place to capture defects was with the requirements. Same old sentiment… just because you can doesn’t mean you should!!

image
 

SharePoint, JQuery and AJAX – a beginner’s survival guide

 

Chris introduced us to jQuery and AJAX techniques for taking a basic UI kicking and screaming into this century.

The info in Chris’s session was super useful. I’m not very familiar with this area of front end development from an implementation point of view, usually relying on one of the more talented dev’s at C+C to implement my design. Following this session I think even I might start giving it a go.

Chris boiled down the techniques into four or five core techniques.

Real World Sandboxed Solutions

 

Andrew presented his second session of the day. This time focused on Sandbox solutions. Not the development details and code required, for that make sure to attend Martin’s up coming SUGUK event.

Andrew introduced the benefits of governance for an organisation using Sandbox solutions. The ability to react and adapt to business challenges without needing a development project run by central IT. The cost benefits of buying off the shelf apps (his own company sell 21Scrum).

So what’s missing now…. well MS are missing a massive part of the SandBox offering…. the all singing AppStore!

So not everyone agrees on Sandbox or no Sandbox, personally i sit firmly in the SandBox camp. It has massive potential for on-premise and BPOS application.

Business Connectivity Services

 

Due to my session being next I skipped most of this session to prepare.

Community Kit for SharePoint: Development Tools Edition

 

So most people by now know I’m part of a community project enhancing the Visual Studio 2010 SharePoint tools. My session covered the current version of the tools. Going over the life story of SharePoint development from WSPBuilder to the new VS2010 tools and how CKSDev fits in the picture.

Tempting fate I chose to build a WCM project on the fly during the session. Importing fields, content types, creating a masterpage, page layouts for the content types and finally a global branding element in under 30 mins. Yes folks it really is that quick to get the basics plummed up and deployable.

image

Ask the experts

 

The panel included Chris, Andrew, Paul Swider and myself. We fielded a variety of questions about SharePoint development. Some even about iPad and tricks for getting it to work.

image

Final round up

 

It was a great experience speaking and being part of such a well organised and information rich event. I would recommend attending if you didn’t get opportunity to attend the SPEvo conference.

And one last amusement of the day was the punter who missed out on the iPad top giveaway prize by leaving early!!! Gotta be in it to win it.

image

 

Event photos borrow from Intelligent Decisioning Ltd, a Nottingham based Microsoft Gold Partner SharePoint CRM/Workflow solutions company and one of the organisers of the event.

CKSDev Version 1.1 Released

CKSLogo

Highlights include: 

 

  • Improved SPMetal SPI
  • Improved Full Trust Proxy SPI
  • New grouped content types and import function
  • New site columns and import function
  • New Fluent UI Visual web part SPI
  • Improvements to quick deploy
  • Under the cover code improvements
  • Improved import content type
  • Powershell added to the references tab

Which version should I download?

 

If you are using SharePoint Foundation 2010 then download and install the SharePoint Foundation 2010 version 

If you are using SharePoint Server 2010 then download and install the SharePoint Server 2010 version

Community Kit for SharePoint Development Tools Edition

CKSLogo

Most SharePoint developers and consultants have heard of the Community Kit for SharePoint. Previous 2007 projects included the Enhanced Blog Edition and was widely downloaded by the community. For SharePoint 2010, development tools edition joins the CKS. This project extends the Visual Studio 2010 SharePoint project system with advanced templates and tools. Using these extensions you will be able to find relevant information from your SharePoint environments without leaving Visual Studio. You will have greater productivity while developing SharePoint components and you will have greater deployment capabilities on your local SharePoint installation.

You can find CKS: Development Tools Edition on CodePlex at http://cksdev.codeplex.com.

CKS:DEV has been formed as a merger of the SharePoint Dev Tools, SPVSX and Imtech Visual Studio Extensions projects. Each one of these projects provided extensions to the SharePoint development tooling. We decided to bring all these great tools under one roof to allow you the SharePoint Community a single downloadable package of trusted high quality tools.

We’re currently merging the tooling from the 3 projects into CKS Dev. Expect to see the first release within the next few weeks. Follow #CKSDev on twitter to stay up to date with the project.

We’re still looking for extension ideas so please post in the CKS Dev Discussions anything you think would make life better for SharePoint developers.

CKS Dev Feature highlights

Environment:

  • SharePoint references tab making it easier to find SharePoint assemblies.
  • Copy assembly name so no more need to use reflector to get the full strong name.

Exploration

  • New Server Explorer nodes to list feature dependancies, site columns, web part gallery, style library, theme gallery.
  • Enhanced import functionality for web parts, content types, themes.
  • Create page layout from content type (publishing).
  • Copy Id.

Content

  • Project templates for Full Trust Proxt, SharePoint console application and SP metal definition.
  • Item templates for Sandboxed Visual Web Part, custom action group, custom action, hide custom action, delegate control.

Deployment

  • Quick deploy to copy artefacts into the SharePoint root without the need for a build.
  • Recreate site.
  • Reset IIS.
  • Warm up site.

To see more details and the full feature list visit http://cksdev.codeplex.com/documentation.

Introducing the team.


Matt Smith

Matt is a SharePoint Server MVP who has previously worked on the final version of Microsoft’s Visual Studio Extensions for SharePoint (VSeWSS 1.3), adding such functionality as Quick Deploy and Deployment Conflict Resolution. Matt is passionate about all things SharePoint, but focuses primarily in the dev and customisation space with a specific interest in developer process and productivity improvement.

Follow him on Twitter or via http://blog.mattsmith.co.nz.


Todd Bleeker

Todd can most frequently be found teaching SharePoint developers the best ways to leverage SharePoint to meet business needs in cities all over the world. As a SharePoint Foundation MVP, Todd is also frequent speaker at key conferences like: Microsoft TechEd (US, EMEA, China, Australia, New Zealand), the SharePoint Conference, and the SharePoint Best Practices Conference as well as User Groups and SharePoint Saturdays all over the United States. Todd has authored or co-authored seven books including the Developer’s Guide to Windows SharePoint Services (with three more on the way) on Microsoft’s integrated suite of SharePoint Products and Technologies.

Follow him on Twitter or via http://sharepoint.mindsharpblogs.com/Todd/.


Waldek Mastykarz

Waldek is a current SharePoint Server MVP working with Imtech ICT Integrated Solutions. He is specialises in designing and developing Web Content Management solutions on the SharePoint platform and is passionate about increasing the developer productivity.

Follow him on Twitter or via http://blog.mastykarz.nl/.


Wouter van Vugt

Wouter is a current VSTO MVP and main author of SharePoint Developer Tools.

Follow him on Twitter or via http://blogs.code-counsel.net/Wouter/.

 

Wes Hackett

That’s me :)

 

 

 

Visit the CodePlex site for more information about the features and release.

Configure VSIX project to enable debugging

DebugVSIX

Visual Studio 2010 beta 2 SDK includes the new extensibility project which produces a VSIX package. While developing these projects it is often helpful to debug the code. In some circumstances the debug settings can be lost so follow this post to add them back into the project settings.

To setup the VSIX for debugging:

Open the project properties window and select the Debug tab.

Select ‘Start external program’ and add C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe (assuming you have installed VS to the default location)

In the ‘Command line arguments’ add /rootsuffix Exp to use the experimental Visual Studio instance.

Properties window

Now when F5 is run Visual Studio installs the extension to %UserProfile%\AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions\ and opens it in the experimental instance.

How to connect to a TFS server using Visual Studio 2010

TFSConnectionRegistry

Original from Sara Ford’s Weblog which I thought I’d borrow, as this is an issue I keep finding myself resolving and wanted the info in case Sara removes the original.

‘Thanks to Martin Hinshelwood, a Team System MVP, for sharing the following workaround with all of us!

Excerpt below copied from solution-to-connecting-to-TFS-using-https-over-the-internet.aspx

This problem it seams is to do with the way Visual Studio 2010 connects to your TFS server over HTTPS. The default value for “BypassProxyOnLocal” in Visual Studio 2008 was “False”, but it has been changed to “True” for Visual Studio 2010 Beta 1. It should be noted that this is currently a Beta 1 workaround and this behaviour may be updated for Beta 2 and RTM.

You can fix this by adding the following registry keys and restarting Visual Studio 2010:

You need to add a “RequestSettings” key to both of the following location that contains a string value pair of “BypassProxyOnLocal=’False’”.

32bit OS Key Locations:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\TeamFoundationServer\10.0\RequestSettings

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings

64bit key locations:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\TeamFoundationServer\10.0\RequestSettings

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings

You can find out more on the “How to: Change the BypassProxyOnLocal Configuration” documentation on MSDN.

Paste the following into a batch file and runas Administrator.

reg add hklm\SOFTWARE\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings /v BypassProxyOnLocal /t REG_SZ /d False

reg add hklm\SOFTWARE\Microsoft\TeamFoundationServer\10.0\RequestSettings /v BypassProxyOnLocal /t REG_SZ /d False

reg add hklm\SOFTWARE\Wow6432Node\Microsoft\TeamFoundationServer\10.0\RequestSettings /v BypassProxyOnLocal /t REG_SZ /d False

reg add hklm\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings /v BypassProxyOnLocal /t REG_SZ /d False

This will add the required registry entries.

To complete the changes reboot the system and you should now have no problems accessing TFS2010

A really useful workaround for TFS users and Visual Studio 2010