Blog - Title

Visual Studio 2013 Current Status

  • The Ultimate Visual Studio Tips and Tricks Blog

    On Vacation


    Folks I will be on vacation until 8/5. See you all in a couple of weeks :)


    p.s. Unfortunately I’m not going to the great place shown in the picture…

  • The Ultimate Visual Studio Tips and Tricks Blog

    Visual Studio 2013 Preview: Navigate To


    You can use Navigate To to search for objects, definitions, or references (symbols) in a solution. If you happen to remember the old Navigate To dialog box then you know it was useful but blocked your view of the code:

    5-16-2012 12-25-54 PM


    The new Navigate To dialog is much less intrusive. Just press CTRL+,[comma] to see the new dialog:

    5-16-2012 12-33-33 PM


    The Navigate To experience will look one of two ways while you are using it. If the symbol is in any open document the relevant line will be highlighted within it:

    5-16-2012 12-50-22 PM


    If the symbol is not in an open document then it will show up in the Preview Tab:

    5-16-2012 1-01-17 PM


    There is only one search option when using Navigate To that will include (or exclude) external items:

    5-16-2012 1-14-47 PM


    At any time you can press ESC to close Navigate To and go back to your original code.

  • The Ultimate Visual Studio Tips and Tricks Blog

    InRelease for Visual Studio 2013 Preview Now Available



    In case you haven’t heard we acquired InCycle’s InRelease Business Unit. Here is information on InRelease from the website (


    InRelease is a Continuous Delivery solution for .NET teams that automates the release process from Visual Studio Team Foundation Server (TFS) up to production for faster and simpler deliveries. With pre-defined release paths, InRelease automatically deploys your application as a whole to multiple environments. Based on a business-approval workflow, InRelease improves coordination and communication between development, operations and quality assurance to make release cycles repeatable, visible, and more efficient.



    More interesting is the information from Brian Harry (

    [NOTE: Extra space added by me]


    At TechEd, in early June, I announced our agreement to acquire InRelease – a release management product built specifically for Team Foundation Server by InCycle Software.  Since then, we’ve received tons of requests for more information, demos, etc.  Unfortunately, we’ve only been able to point people at InCycle because the acquisition was not final.  I’m happy to say that about a week ago we closed the acquisition and InRelease is now a part of Microsoft.


    That doesn’t mean we can start selling it right away.  There are a number of things that have to happen in order to enable that – getting it on our price lists, shipping a version that is properly branded, serviceable, etc.  All of that will take a few months but there are some good options for you in the interim.  Let me share some of them.


    • We are providing a preview of our future Release Management product today.  It’s basically the existing InRelease product with some minimal changes to meet some of our compliance requirements.  You can download it here.  You can also read the InRelease Preview User Guide and ask questions on the forum.


    • InCycle Consulting will continue as an independent company and, until we ship the first fully Microsoft product, will continue to provide trials and sell the InRelease product.  Customers who purchase now will be provided a free upgrade to the Microsoft shipped version when it is available.  This is a good way to get started now and be sure that you also have a good path forward.


    Hopefully these two paths will solve everyone’s needs while finish up the changes we need to make.


    I also want to say a few words about licensing so you, at least, have a little context on what to expect.  We are not ready to announce pricing but I can share a bit about the structure of the licensing.

    • The InRelease release management authoring components will be included in Visual Studio Test Professional, Visual Studio Premium and Visual Studio Ultimate.
    • Everything needed to participate in a release process (as opposed to configuring it) will be included in the Team Foundation Server CAL.
    • The InRelease server components will be integrated into Team Foundation Server 2013.
    • The InRelease deployers (which are required for each node you deploy on) will continue to be licensed separately.

    For now, we are focused on getting InRelease integrated into our on premises product.  We will also support our cloud service but that will come a bit later.


    Please give it a try and give us any feedback you have.  As you might imagine, we are currently working on developing and prioritizing our backlog.




  • The Ultimate Visual Studio Tips and Tricks Blog

    Understanding IntelliTrace Part V: Advanced IntelliTrace Settings


    This is a multi-part series, you can find the other parts here:

    Understanding IntelliTrace Part I: What the @#$% is IntelliTrace?

    Understanding IntelliTrace Part II: Where Do I Use IntelliTrace?

    Understanding IntelliTrace Part III: IntelliTrace Events

    Understanding IntelliTrace Part IV: IntelliTrace Calls



    Before we get started I want to be absolutely clear: there is nothing “advanced” about the setting we are going to talk about. The word “advanced” in this case could (and probably should) be replaced with “miscellaneous” or, better yet, “stuff you should always have turned on”. I am, of course, talking about the setting found at Tools | Options | IntelliTrace | Advanced:

    5-16-2012 12-20-13 PM


    We will go though each of these in order and make sure you are clear on reasons for usage. Remember we are using the Brian Keller Virtual Machine with the Tailspin Toys sample code for these posts although this specific post can be used with any codebase.




    IntelliTrace Logs

    Running IntelliTrace sessions is great but the experience ends when you stop debugging.  Try it and see what I mean. Get some IntelliTrace info up doing one of the exercises in the previous post:

    5-16-2012 12-20-13 PM


    Now stop debugging. Notice the IntelliTrace window completely goes away and there is no way to bring it back UNLESS you start a new debugging session or record an IntelliTrace log file. How do we get a log file? Just go to | Options | IntelliTrace | Advanced and select Store IntelliTrace Recordings In This Directory:

    5-16-2012 12-20-13 PM


    You might also want to create a new local directory with a shorter path to hold your logs:

    5-16-2012 12-20-13 PM


    Now you have a place for your IntelliTrace sessions to be stored:

    5-16-2012 12-20-13 PM


    We will dig into the specifics of what the log files contain in a later post however feel free to open one of these up and poke around on your own if you want.



    Best Practice: Always turn on IntelliTrace logs.




    Log File Size

    The next decision to make is our log file size. I suggest a minimum of 500MB to 1GB regardless of activity.  If in doubt then go with No Size Limit but watch the file closely. Choose your size carefully. Here are the criteria you need to consider when choosing log file size:

    5-16-2012 12-20-13 PM


    Cyclical Log Files

    The log files are cyclic which means that when it fills up it will begin overwriting the oldest entries in favor of newer ones.


    Collection Type

    Are you collecting Events Only or Events and Calls? Events Only consumes much less space so you can go with smaller log sizes if needed. Events and Calls will require significantly more space so plan accordingly.


    Time Window

    The size of your log file determines, in essence, your time window. Capturing 500MB will capture half the time window that 1GB will. Since the log files are cyclic they will only capture a sliding time window until the trace stops.




    Navigation Gutter

    We will explore navigation more in another post but, for now, leave this setting selected:

    5-16-2012 12-20-13 PM


    This will give you special navigation features that are useful when troubleshooting IntelliTrace Calls:

    5-16-2012 12-20-13 PM


    Turning it off simply removes the navigation buttons and the gutter:

    5-16-2012 12-20-13 PM




    Symbol and Source Lookups

    5-16-2012 12-20-13 PM


    Symbol Path Lookup

    Selecting the Enable Team Foundation Server Symbol Path Lookup option will enable the system so that when you are using IntelliTrace or an IntelliTrace log file it can use the build information to automatically try and pull down the matching symbol information for the build you are debugging. This option assumes you have a TFS Build server set up.



    Source Server Support

    Selecting the Prompt To Enable Source Server Support option actually will give you a dialog that will automatically turn on another option found at Tools | Options | Debugging | General | Enable Source Server Support:

    5-16-2012 12-20-13 PM


    To clarify what this means I’ll point you to the documentation on this option and what it says:


    Tells the Visual Studio debugger to get source files from source servers that implement the SrcSrv (srcsrv.dll) protocol. Team Foundation Server and and the Debugging Tools for Windows are two source servers that implement the protocol.



    To expand on this we can go to another source for more information:


    When there is no source code on the local machine or the PDB file does not match the source code, you can use Source Server to help debug an application. Source Server takes requests for files and returns the actual files. Source Server runs by means of a DLL file named srcsrv.dll. Source Server reads the application's PDB file, which contains pointers to the source code repository, as well as commands used to retrieve source code from the repository.





    This area of IntelliTrace is fairly easy to wrap you head around in terms of decision-making: turn everything on. The only real question is what size your log file needs to be. As I teach you more advanced techniques just make sure you don’t fill up your drive with an unattended IntelliTrace session that is being logged.

  • The Ultimate Visual Studio Tips and Tricks Blog

    "The reports of my death are greatly exaggerated"–Mark Twain




    Apologies for going dark on you suddenly. I have not stopped writing to the blog permanently. We are in the last quarter of our fiscal year and it’s a bit of a sucker doing customer visits and webcasts and blogging so I’ve suspended the blogging until July. Thanks for reading the blog and I am answering comments as they come up. I will also be finishing the series on IntelliTrace as planned once this fiscal ends. Good times! Smile



  • The Ultimate Visual Studio Tips and Tricks Blog

    Team Foundation Server Planning Guide




    For folks that haven’t seen this it’s great guidance on TFS implementation. Here is a blurb from the site:


    This solution delivers practical and scenario based guidance for the implementation of Team Foundation Server. We guide you through the decisions whether to have one or more Team Foundation Servers, one or more Team Project Collections, one or more Team Projects and one or more Teams, based on scenarios and implications of each decision. In addition we cover disaster recovery planning with a focus on avoidance, frequently asked questions and a collection of real-world reference stories.


  • The Ultimate Visual Studio Tips and Tricks Blog

    TFS 2012 Update 1: Permissions lost on attaching a collection–fix available


    I’ve had some customers that are experiencing this issue so wanted to get it out more broadly in case you are having similar problems.  Buck Hodges has written a blog post on symptoms and resolution here:


    The KB article can be found here:


    There are several other issues fixed with this TFS Update.  Here is the list of issues that are fixed (for more detail go to the KB article):

    Issue 1: Collections that are attached to a server that is running TFS 2012 Update 1 may lose permissions


    Issue 2: Group scopes may incorrectly cause permission errors


    Issue 3: Severe decrease in performance after TFS 2012 Update 1 is installed


    Issue 4: Identity sync jobs may fail repeatedly


    Issue 5: Warehouse is not updated correctly, or fields that represent a person are not filled


    Issue 6: Users can see names of collections of which they are not a member


    Issue 7: You cannot remove a user or a group after you attach a collection to a TFS 2012 Update 1 server


    Issue 8: You cannot view artifacts that reference an identity that is no longer a part of a collection

  • The Ultimate Visual Studio Tips and Tricks Blog

    Questions from the Field: Excluding Different Files or Directories on Debug and Release Builds


    A customer asked me the other day about excluding different files (or directories) based on the type of build happening.  Specifically they wanted to exclude some files for Release builds and others for Debug builds.


    Here is the general info on how to exclude files from builds:


    Within the article you will want to take a look at the Condition attribute which specifically calls out how to exclude based on build type:

        Condition=" '$(Configuration)' == 'Release' " />
  • The Ultimate Visual Studio Tips and Tricks Blog

    Questions from the Field: Restoring Work Items When You Accidentally Delete Them


    I had a customer accidentally delete some test cases in Team Foundation Server the other day and call me in a panic.  Fortunately they had good backups and the story ended well but I thought it would be good to review what is needed in case you accidentally delete your work items.


    It’s All About the Databases!

    TFS uses databases and, therefore, the key to recovering in TFS is making sure you are backing up and are able to recover the underlying databases.  Here is the guidance on how to do just that:


    Not all artifacts are easy to recover.  Test Plans are particularly fun to get back so my friend Angela wrote an article about how to recover in those special situations:



    Have You Hugged Your DBA Today?

    Being able to recover means having a good relationship with your database administrator.  Make sure you are in sync on the TFS install and what pieces of the deployment are high value vs. low value projects, etc…  Like in most things communication is the key to success and there is not such thing as over communicating when it comes to your TFS instance…

    …Okay there IS such a thing as over communicating so don’t, for example, hire an airplane to fly over your building with your favorite table name from the TFS database.

  • The Ultimate Visual Studio Tips and Tricks Blog

    MSDN Features You Need to Know About: MSDN Online Concierge


    Did you know as an MSDN subscriber of any level you have access to a personal online valet of sorts?  It’s called the MSDN Online Chat which is totally misleading in my opinion.  I prefer to call it the “Online Concierge” as that is more in-line with what the service does.


    Online Concierge

    Okay so what DOES this service do?  Well let’s start by being clear about what they do NOT do:  they are not, repeat, are NOT technical support. Period. We have technical support avenues but this is not one of them. What this service does is look up information for you so you can continue to work on other things. The best way to show you is by example, so here we go…


    Be My Research Assistant

    I recently did a post about the new VS2012 Update 1 and wanted some additional links.  I was also busy working on some midyear performance review items so decided to let the concierge handle finding the info.  Below are the steps you would follow to do the same thing I did.


    To get started, you go to the main MSDN site ( and click on the link to access your benefits:



    At the bottom of the list of benefits you will see the MSDN Online Chat:



    I want to reemphasize that THIS IS NOT TECHNICAL SUPPORT.  These folks are paid to be your research assistants as you can see by the description and/or answer MSDN benefits questions.  In this case I got “Harrison” and asked him about documentation on VS2012 Update 1:



    Below is the rest of the transcript, that I had emailed to me from the chat window, from the conversation verbatim with extra space, some commentary, and emphasis added:


    info: Please wait for an agent to respond.  You are currently '1' in the queue.
    info: Privacy Statement

    You are now chatting with 'Harrison'.

    Harrison: Thank you Zain for contacting the MSDN Online Concierge. How may I assist you today?
    Zain Naboulsi: hello harrison, can you tell me where to find information on Visual Studio 2012 Update 1?

    Harrison: Thank you for your inquiry. Let me provide you the download link, Zain. Just one moment please.

    [ZN: I wanted to simulate having to run off to lunch or go to a meeting or something here to show how awesome they are.  They will do the research and email you the result later on.]
    Zain Naboulsi: I need to jump off can you email it to me?

    Harrison: Sure, may I know if you are referring to the Visual Studio Team Foundation Server 2012 with Update 1?
    Zain Naboulsi: Nope just want the list of bug fixes and new features in Visual Studio 2012 Update 1


    [ZN: Highlighted below is the standard disclaimer you will usually get when doing one of these sessions. They are great helpers and research assistants but they are NOT TECHNICAL SUPPORT.  Not sure if I mentioned that 100 times already or not but wanted to be clear]
    Harrison: Thanks for your clarification. I will see if I can help to find some documentation that will point you to the right direction. However please understand that we are not technical professionals, and if we are unable to locate anything specific for your concern, I can also provide you some other support options. May I know if that's OK for you?
    Zain Naboulsi: sounds good :)

    Harrison: Thank you for your understanding. May I know your preferred email address please?
    Zain Naboulsi:

    Harrison: Thank you. I will send it to you later after my researching, Zain. May I know if there is anything else I can help you with at this time?
    Zain Naboulsi: that should do it, thanks for your help :)

    Harrison: My pleasure. If you have any further concern, please feel free to come back again. We are open 24 hours a day, seven days a week.
    Harrison: Take care and bye for now.
    Harrison: Have a nice day.
    info: Your chat transcript will be sent to at the end of your chat.



    And there you have it!  I’ll bet twenty bajillion dollars that you didn’t know about this benefit already.  Most people don’t so don’t feel bad.  These folks are available 24/7 so take advantage of your new research assistants to help you find things out!

Page 134 of 135 (1,345 items) «131132133134135