<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Visual Studio Hacks &#187; Tools</title>
	<atom:link href="http://visualstudiohacks.com/category/uncategorized/tools/feed/" rel="self" type="application/rss+xml" />
	<link>http://visualstudiohacks.com</link>
	<description></description>
	<lastBuildDate>Mon, 23 Nov 2009 23:09:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>VSTweak</title>
		<link>http://visualstudiohacks.com/tweaks/vstweak/</link>
		<comments>http://visualstudiohacks.com/tweaks/vstweak/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:27:00 +0000</pubDate>
		<dc:creator>javery</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Tweaks]]></category>

		<guid isPermaLink="false">http://vsh.infozerk.net/?p=28</guid>
		<description><![CDATA[
Overview
VSTweak is a small windows application that can be used to modify a number of hard to find settings. Using this small utility you can configure dynamic help, most recent lists, command aliases, file extensions, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>
<h2>Overview</h2>
<p>VSTweak is a small windows application that can be used to modify a number of hard to find settings. Using this small utility you can configure dynamic help, most recent lists, command aliases, file extensions, and more. This overview will walk through each of the various tabs and cover what settings can be manipulated from that tab.</p>
<h3>IDE Settings</h3>
<p><img src="/files/media/image/vstweak1.jpg" alt="" /></p>
<p>The first tab contains an odd assortment of Visual Studio settings. The first section on this tab is the Help Settings section which provides an interface to enable or disable two parts of dynamic help. Dynamic Help is the name given to the feature that will automatically suggest help topics based on the context of what you are doing. Dynamic Help can be a great feature, but it also tends to slow down the IDE. If you don&rsquo;t find that you benefit from dynamic help then disabling it here can speed up the IDE.</p>
<p>The second section, Import or Export Keyboard Bindings, is an easy to use interface for the management of keyboard bindings. Simply select the keyboard bindings that you want to export, click the export button, than select where to save the file. After saving the file you will then need to copy it to your new system, where you can then open VSTweak, click the Import button, and select your keyboard bindings file. Using this method you can move your configured keyboard bindings from system to system.</p>
<p>The last section on this tab, Clear History, can be used to clear a number of different history lists that exist in Visual Studio. These include the command list, browser history list, find history, as well as the replace history.</p>
<h3>Alias Manager</h3>
<p><img src="/files/media/image/vstweak2.jpg" alt="" /></p>
<p>The Command Window can be used in the IDE to quickly execute any command, without reaching for the mouse. Anything you can do from a menu or toolbar can also be done through the command window. One feature that helps make the command window so easy to use is the alias. An alias is simply a shortcut, or pointer, to a command. For example, instead of typing &ldquo;File.Close&rdquo; you can just type &ldquo;close&rdquo;. Normally you have to manage command aliases through the command window, but VSTweak provides a nice graphical interface to see all the existing aliases, edit existing aliases, or create new ones. Using the Available Commands button you can view all of the existing commands, and using the View File button you can peek into the actual alias file.</p>
<h3>MRU Lists Manager</h3>
<p><img src="/files/media/image/vstweak3.jpg" alt="" /></p>
<p>The File MRU list shows the files that you have recently opened, and the Project MRU list shows the projects that you have recently opened. This tab provides an interface for you to add, remove, or clear out these lists.</p>
<p>One issue that often arises from these lists starts when you open a file or project that is located on a network share. At a later time when you open Visual Studio, and you are no longer connected to the network share, Visual Studio can hang while it tries to access that file. To resolve this issue simply navigate to this tab and remove the files or projects located on the unavailable network share.</p>
<h3>File Extensions Manager</h3>
<p><img src="/files/media/image/vstweak4.jpg" alt="" /></p>
<p>Unlike many other applications Visual Studio has the capability to handle a large number of different file extensions. Using the interface on this tab you can add even more extensions to Visual Studio. First you simply need to enter the extension you want to add, and then select what extension your new extension should be treated as. A great example of when you might want to use this is when there is a custom extension that should be treated as a normal type, for instance you might want to add .cst files (Files for the CodeSmith tool) to be treated as .aspx files. This will give you some color coding and other features when designing CodeSmith templates. Another frequent use is custom extensions that should be treated as XML, for instance you might be using a tool that takes a configuration files with the extension of .xconf, and you could add this extension and have it treated as an XML file.</p>
<h3>Debug editor</h3>
<p><img src="/files/media/image/vstweak5.jpg" alt="" /></p>
<p>The debug editor is an easy way to edit the mcee_cs.dat file. This file is used to configure how an object is displayed in the debug windows (auto, watch, locals, etc.). Normally a custom class simply displays the name of that class, using this file you can configure Visual Studio to display something different. (Usually a property of that class)</p>
<p>I will not go into the details of how to do this as you can access an excellent example and walkthrough by click on the step by step example linked to on the bottom left of the tool.</p>
<p><a href="http://code.msdn.microsoft.com/VSTweak">Download</a></p></p>
]]></content:encoded>
			<wfw:commentRss>http://visualstudiohacks.com/tweaks/vstweak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SccSwitch</title>
		<link>http://visualstudiohacks.com/source-control/sccswitch/</link>
		<comments>http://visualstudiohacks.com/source-control/sccswitch/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:23:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Source Control]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://vsh.infozerk.net/?p=27</guid>
		<description><![CDATA[Overview
Visual Studio provides a common interface that source contorl providers can use to write their own source control providers. This means you can use any number of source control systems through the same familiar Visual [...]]]></description>
			<content:encoded><![CDATA[<p></p><h2>Overview</h2>
<p>Visual Studio provides a common interface that source contorl providers can use to write their own source control providers. This means you can use any number of source control systems through the same familiar Visual Studio interface. The problem is that until Visual Studio 2005 there is no easy way to switch the source control provider, that is where this tool comes in. The simple interface of this tool can be seen here:</p>
<p><img src="/files/media/image/sccswitch1.jpg" alt="" /></p>
<p>All you need to do is simply check the checkbox next to the source code provider you want to enable and click the Update button.</p>
<p><a href="http://cid-0d9bc809858885a4.skydrive.live.com/self.aspx/DevHawk%20Content/Articles/SccSwitch.zip">Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://visualstudiohacks.com/source-control/sccswitch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SourceSafe Bindings Remover</title>
		<link>http://visualstudiohacks.com/source-control/sourcesafe-bindings-remover/</link>
		<comments>http://visualstudiohacks.com/source-control/sourcesafe-bindings-remover/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:17:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Source Control]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://vsh.infozerk.net/?p=26</guid>
		<description><![CDATA[After you added a solution to source control in Visual Studio there is no easy way to completely remove the source control from that project. You can detach the project, or work in offline mode, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>After you added a solution to source control in Visual Studio there is no easy way to completely remove the source control from that project. You can detach the project, or work in offline mode, but if you were moving to another source control system (CVS, Subversion, etc) or wanted to distribute your code the first thing you should do is remove all the sourcesafe bindings from that project. A quick and easy way to do this is using the SourceSafe Binding Remover tool.</p>
<p>The simple interface can be seen here:</p>
<p><img src="/files/media/image/ssbremover1.gif" alt="" /></p>
<p>You simply need to point the tool to your solution&#8217;s directory and it will do the rest. If you want to preview the changes that will be made simply press the &#8220;Remove SourceSafe Bindings&#8221; button without checking the &#8220;Remove Bindings?&#8221; checkbox. You can then check the checkbox when you are ready to remove all of the bindings from your files. This tool will modify the solution files, project files, as well as delete any source control specific files (.scc, .vssscc).</p>
<p><hr size="2" />The SourceSafe Bindings Remover was written by <a href="http://codebetter.com/blogs/darrell.norton/default.aspx">Darrell Norton.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://visualstudiohacks.com/source-control/sourcesafe-bindings-remover/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TraySource</title>
		<link>http://visualstudiohacks.com/source-control/traysource/</link>
		<comments>http://visualstudiohacks.com/source-control/traysource/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:11:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Source Control]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://vsh.infozerk.net/?p=25</guid>
		<description><![CDATA[
Quickly switch between source control providers using this application that lives in your system tray. As you can see from the image above all you have to do is right-click on the tray icon and [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="/files/media/image/traysource.gif" alt="" /></p>
<p>Quickly switch between source control providers using this application that lives in your system tray. As you can see from the image above all you have to do is right-click on the tray icon and then select the source control provider that you would like to use. This is a great utility for people who are constantly switching between source code providers.</p>
<p><a href="http://www.beckerx.com/Software/">Homepage</a></p>
<p><a href="http://www.beckerx.com/Software/TraySource.zip">Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://visualstudiohacks.com/source-control/traysource/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Snippy</title>
		<link>http://visualstudiohacks.com/code-snippets/snippy/</link>
		<comments>http://visualstudiohacks.com/code-snippets/snippy/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:07:00 +0000</pubDate>
		<dc:creator>javery</dc:creator>
				<category><![CDATA[Code Snippets]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://vsh.infozerk.net/?p=24</guid>
		<description><![CDATA[
Code Snippets are a handy way to reuse pieces of code to avoid repeating repetitious work repeatedly.&#160; Visual Studio 2003 and 2005 both enable developers to drag snippets of code onto the General Toolbox, but [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>
<p>Code Snippets are a handy way to reuse pieces of code to avoid repeating repetitious work repeatedly.&nbsp; Visual Studio 2003 and 2005 both enable developers to drag snippets of code onto the General Toolbox, but stuffing snippets on the Toolbox isn&rsquo;t very organized and doesn&rsquo;t allow any form of keyboard access.&nbsp; Readers of my <a href="http://visualstudiohacks.com/navtricks"><cite>Confessions of a Keyboard Junkie</cite></a>&nbsp;article may have a feel for how much that would irritate me&hellip;</p>
<p>Visual Studio 2005 includes Intellisense support for adding in code snippets, making it much easier to work with snippets while developing your code.&nbsp; What&rsquo;s cool is that the implementation enables you write your own snippets and drop them into Visual Studio 2005.&nbsp; Microsoft even established <a href="http://msdn2.microsoft.com/en-us/library/ms171418.aspx">an XML schema</a> detailing the layout of snippets.&nbsp; What&rsquo;s not cool is that you&rsquo;ll have to write your snippets inside a CDATA block inside lots of various XML elements.&nbsp; That gets rather odious rather quickly.&nbsp; The following is the destructor snippet included with Visual Studio 2005:</p>
<p><font face="Courier New">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;<br />
&lt;CodeSnippets&nbsp; xmlns=&quot;</font><a href="http://schemas.microsoft.com/visualstudio/2005/codesnippet"><font face="courier new">http://schemas.microsoft.com/<br />
VisualStudio/2005/CodeSnippet</font></a><font face="courier new">&quot;&gt;<br />
&nbsp;&lt;CodeSnippet Format=&quot;1.0.0&quot;&gt;</p>
<p>&nbsp;&nbsp;&lt;Header&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Title&gt;~&lt;/Title&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Shortcut&gt;~&lt;/Shortcut&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Description&gt;Code snippet for destructor&lt;/Description&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Author&gt;Microsoft Corporation&lt;/Author&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&lt;SnippetTypes&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;SnippetType&gt;Expansion&lt;/SnippetType&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;/SnippetTypes&gt;<br />
&nbsp;&nbsp;&lt;/Header&gt;<br />
&nbsp;&nbsp;&lt;Snippet&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Declarations&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;Literal Editable=&quot;false&quot;&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ID&gt;classname&lt;/ID&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ToolTip&gt;Class name&lt;/ToolTip&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Default&gt;ClassNamePlaceholder&lt;/Default&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Function&gt;ClassName()&lt;/Function&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Literal&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&lt;/Declarations&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;Code Language=&quot;csharp&quot;&gt;&lt;![CDATA[~$classname$()<br />
&nbsp;{<br />
&nbsp;&nbsp;$end$<br />
&nbsp;}]]&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;/Code&gt;<br />
&nbsp;&nbsp;&lt;/Snippet&gt;<br />
&nbsp;&lt;/CodeSnippet&gt;</p>
<p>&lt;/CodeSnippets&gt;</font></p>
<p>Writing raw XML isn&rsquo;t one of my favorite things, so I&rsquo;m happy when a tool can put the right bits into the right elements for me.&nbsp; The Snippy Power Tool does just that, plus it helps you get the snippets registered and in the appropriate directory for Visual Studio to use them.&nbsp;Instead of writing the XML above, you use Snippy&rsquo;s handy GUI and just fill in fields.</p>
<p><img border="0" src="/files/media/image/snippy1.gif" alt="Snippy's main screen" /></p>
<p>The overview graphic is a bit hard to decypher at its small size, so let&rsquo;s take a zoomed-in look at the major fields</p>
<p><img border="1" src="/files/media/image/snippy2.gif" alt="Snippy Header fields" /></p>
<p>These fields all correspond to <font face="Courier New">&lt;Header&gt;</font>&nbsp;elements in the XML shown above.&nbsp; Writing the actual snippet is much simpler as well.&nbsp; Simply write your code in the field, adding markers for literals or objects as desired.&nbsp;</p>
<p><img border="1" src="/files/media/image/snippy3.gif" alt="Snippet text and literal/object fields" /></p>
<p>Adding and editing literals or objects (text that&rsquo;s replaced in the snippet) is accomplished via a simple dialog box:</p>
<p><img border="0" src="/files/media/image/snippy4.gif" alt="Editing an existing Literal" /></p>
<p>You&rsquo;ll need to save snippets in a location where Visual Studio 2005 can find them.&nbsp; Snippets are stored in either a user&rsquo;s profile folder or in Visual Studio&rsquo;s snippets folder.&nbsp; You can find these paths by pulling open the Code Snippet Manager dialog from Visual Studio&rsquo;s Tools menu and looking at the Location field.</p>
<p>Overall, Snippy is a very handy tool for creating and maintaining snippets.&nbsp; It&rsquo;s not integrated into the Visual Studio environment like <a href="http://www.codekeep.net/">Dave Donaldson&rsquo;s CodeKeep</a> &mdash; but CodeKeep hasn&rsquo;t yet been updated for Visual Studio 2005. (Editors Note: Dave promises it will be out soon)</p>
<p>You can learn more about creating snippets from the following sites:</p>
<ul>
<li><a href="http://msdn2.microsoft.com/en-us/library/ms165393%28en-us,VS.80%29.aspx">Creating Code Snippets</a> &mdash; Microsoft&rsquo;s How-To guide on creating basic and advanced snippets, including psuedo-clear explanations for Literal and Object replacements</li>
<li><a href="http://msdn2.microsoft.com/en-us/library/ms165392.aspx">Creating and Using Intellisense Code Snippets</a> &mdash; another Microsoft How-To for using and managing snippets</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://visualstudiohacks.com/code-snippets/snippy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
