<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Zuhaib</title>
	
	<link>http://www.nerdpad.com</link>
	<description>A very lazy but meticulous blogger</description>
	<lastBuildDate>Wed, 19 May 2010 20:15:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/nerdpad" /><feedburner:info uri="nerdpad" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/2.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-nc-sa/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><feedburner:emailServiceId>nerdpad</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/sa5DMq61MW0/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010</link>
		<comments>http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010#comments</comments>
		<pubDate>Tue, 18 May 2010 15:30:02 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Failed]]></category>
		<category><![CDATA[Load]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[vs2008]]></category>
		<category><![CDATA[vs2010]]></category>
		<category><![CDATA[Web Application]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010</guid>
		<description><![CDATA[Today after upgrading a ASP.NET Web Application project in Visual Studio 2010 the project failed to load in Visual Studio 2008. If the machine has both VS2008 and VS2010 installed then the project loaded just fine. But, if a machine does not has VS2010 installed the Web Application failed to load. After the upgrade Visual [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed' rel='bookmark' title='Permanent Link: Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed'>Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Today after upgrading a ASP.NET Web Application project in Visual Studio 2010 the project failed to load in Visual Studio 2008. If the machine has both VS2008 and VS2010 installed then the project loaded just fine. But, if a machine does not has VS2010 installed the Web Application failed to load.</p>
<p>After the upgrade Visual Studio 2010 modified the following:</p>
<pre class="brush: xml; toolbar: false;">&lt;Import Project=&quot;$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets&quot; /&gt;
TO
&lt;Import Project=&quot;$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets&quot; /&gt;</pre>
<p>Because the v10.0 (second) path is not present in machines that do not have V2010 installed, VS2008 was unable to load the project.</p>
<p>After googling I came across <a title="Working with both VS 2010 and 2008 on the team" href="http://www.robrich.org/archive/2010/04/20/working-with-both-vs-2010-and-2008-on-the-team.aspx" target="_blank">this post</a> which tells to use MSBuild’s condition statements to specify the correct path based on the the Visual Studio version. His solution worked fine, the only problem that I faced was when I open the solution in VS2010, it again asked to upgrade the project file, doing which changed the v9.0 path to v10.0 path.</p>
<p>I had to make few minor changes to solve this problem:</p>
<h3><strong>Step1:</strong></h3>
<p>Add the V10.0 path before the V9.0 MSBuild extension path with a Condition property to check for the file based on the Solution Version.</p>
<pre class="brush: xml; toolbar: false;">&lt;Import Project=&quot;$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets&quot; Condition=&quot;'$(Solutions.VSVersion)' == '10.0'&quot; /&gt;
&lt;Import Project=&quot;$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets&quot; Condition=&quot;'$(Solutions.VSVersion)' == '9.0'&quot; /&gt;</pre>
<p>Here is we do not specify the Visual Studio 2010 MSBuild extension path first the Visual Studio will try to upgrade the project.</p>
<h3><strong>Step2:</strong></h3>
<p>After the project file upgrade VS2010 would have changed the FileUpgradeFlags tags value to 0, which would again trigger an upgrade. Remove the Zero from the tag.</p>
<pre class="brush: xml; toolbar: false;">&lt;FileUpgradeFlags&gt;&lt;/FileUpgradeFlags&gt;</pre>
<p>Save the project file and reload. Now you will be able to load the project in VS2010 &amp; VS2008 (Even if VS2010 is not installed) without any problem.</p>
<p>Hope it helps.</p>
<div class="shr-publisher-303"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed' rel='bookmark' title='Permanent Link: Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed'>Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/4POPAhG8OQ2Z9JiaGpx1lE-XCqw/0/da"><img src="http://feedads.g.doubleclick.net/~a/4POPAhG8OQ2Z9JiaGpx1lE-XCqw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/4POPAhG8OQ2Z9JiaGpx1lE-XCqw/1/da"><img src="http://feedads.g.doubleclick.net/~a/4POPAhG8OQ2Z9JiaGpx1lE-XCqw/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/sa5DMq61MW0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Visual Studio 2010: Installing MSDN Documentation</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/YOVK_4T6wdY/visual-studio-2010-installing-msdn-documentation</link>
		<comments>http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation#comments</comments>
		<pubDate>Wed, 28 Apr 2010 19:46:52 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[2010]]></category>
		<category><![CDATA[installing]]></category>
		<category><![CDATA[MSDN]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation</guid>
		<description><![CDATA[Like me if you also forgot to install the MSDN documentation while installing Visual Studio 2010 then don’t worry, it can be installed afterwards. Step 1: Open Help Library Manager Launch Visual Studio 2010 then click on Help » Manage Help Settings It will bring up the Select Location dialog box. You can change the [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Like me if you also forgot to install the MSDN documentation while installing Visual Studio 2010 then don’t worry, it can be installed afterwards.</p>
<h3><strong>Step 1: Open Help Library Manager</strong></h3>
<p>Launch Visual Studio 2010 then click on <strong>Help » Manage Help Settings</strong></p>
<p><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Open Help Manager" border="0" alt="Open Help Manager" src="http://www.nerdpad.com/wp-content/uploads/2010/04/1.jpg" width="356" height="269" /> </p>
<p>It will bring up the Select Location dialog box. You can change the documentation path here, if you want to. But the default path should be ok. Click on <strong>Ok</strong> button to continue to next dialog.</p>
<h3><strong>Step 2: Install From Disk</strong></h3>
<p>In this dialog box click on <strong>Install content from disk</strong> link. Then locate the locate the <strong>HelpContentSetup.msha</strong> manifest file under the <strong>CDROM » ProductDocumentation</strong> folder and click <strong>Open</strong>.</p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/3.jpg" target="_blank"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Install content from disk" border="0" alt="Install content from disk" src="http://www.nerdpad.com/wp-content/uploads/2010/04/3_thumb.jpg" width="369" height="255" /></a> <a href="http://www.nerdpad.com/wp-content/uploads/2010/04/4.jpg" target="_blank"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Choose the manifest file" border="0" alt="Choose the manifest file" src="http://www.nerdpad.com/wp-content/uploads/2010/04/4_thumb.jpg" width="248" height="246" /></a> </p>
<h3><strong>Step 3: Select Contents To Install</strong></h3>
<p>In this dialog box choose what help contents you want to install by clicking on the <strong>Add</strong> link in the <strong>Action</strong> column. Click on the <strong>Update</strong> button to start installing.</p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/5.jpg" target="_blank"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Choose the contents to install" border="0" alt="Choose the contents to install" src="http://www.nerdpad.com/wp-content/uploads/2010/04/5_thumb.jpg" width="344" height="241" /></a> <a href="http://www.nerdpad.com/wp-content/uploads/2010/04/6.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Install the content" border="0" alt="Install the content" src="http://www.nerdpad.com/wp-content/uploads/2010/04/6_thumb.jpg" width="350" height="241" /></a> </p>
<p>When the installation is finished click on <strong>Finish</strong> button to close the dialog box.</p>
</p>
</p>
<h3><strong>Step 4: Choosing Preferred Help Location</strong></h3>
<p>At this point the MSDN documentation are installed on your system, but the Visual Studio is using the online help as the main source. To use the local help contents, <strong>follow Step 1 to open the Help Library Manager</strong>. Click on <strong>Settings, </strong>then click on the <strong>I want to use local help</strong> option button and click <strong>Ok</strong>.</p>
<p>&#160;<strong><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/8.jpg" target="_blank"><img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="Choose local help as the default source" border="0" alt="Choose local help as the default source" src="http://www.nerdpad.com/wp-content/uploads/2010/04/8_thumb.jpg" width="410" height="282" /></a></strong></p>
<p>Hope it helps.</p>
<div class="shr-publisher-301"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/fQNh1JcWtsqqClxWK06S15hIZTU/0/da"><img src="http://feedads.g.doubleclick.net/~a/fQNh1JcWtsqqClxWK06S15hIZTU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/fQNh1JcWtsqqClxWK06S15hIZTU/1/da"><img src="http://feedads.g.doubleclick.net/~a/fQNh1JcWtsqqClxWK06S15hIZTU/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/YOVK_4T6wdY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Visual Studio 2010 Dark Expression Blend Color Theme</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/aNHQbnFvusM/visual-studio-2010-dark-expression-blend-color-theme</link>
		<comments>http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme#comments</comments>
		<pubDate>Sun, 18 Apr 2010 21:30:57 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[2010]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[scheme]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[vs2010]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme</guid>
		<description><![CDATA[As you guys might already know, that Visual Studio 2010 &#38; .NET Framework 4.0 has been released. All of the latest development tools from Microsoft are full of awesomeness. If you haven&#8217;t already got your hands on the latest version of Visual Studio, then below are few links that can get you started: Download Visual [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img style="border-right-width: 0px; margin: 5px 0px 5px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb_04B9B051_thumb" src="http://www.nerdpad.com/wp-content/uploads/2010/04/image_thumb_04B9B051_thumb.png" border="0" alt="image_thumb_04B9B051_thumb" width="260" height="188" align="right" />As you guys might already know, that Visual Studio 2010 &amp; .NET Framework 4.0 has been released. All of the latest development tools from Microsoft are full of awesomeness. If you haven&#8217;t already got your hands on the latest version of Visual Studio, then below are few links that can get you started:</p>
<ul>
<li><a href="http://www.microsoft.com/visualstudio/en-us/download" target="_blank">Download Visual Studio 2010</a>.</li>
<li><strong>Read blogs</strong>.
<ul>
<li><a href="http://weblogs.asp.net/scottgu/" target="_blank">ScottGu</a></li>
<li><a href="http://www.hanselman.com/blog/" target="_blank">Scott Hanselman</a></li>
<li><a href="http://haacked.com/" target="_blank">Haacked</a> (For MVC goodness)</li>
</ul>
</li>
<li><strong>Watch shows</strong>.
<ul>
<li><a href="http://channel9.msdn.com/shows/10-4/" target="_blank">Channel9 10-4</a></li>
<li><a href="http://live.visitmix.com/Videos" target="_blank">MIX10 Videos</a></li>
</ul>
</li>
<li>And of course Google.</li>
</ul>
<h3><strong>My Visual Studio Color Scheme</strong></h3>
<p>I have always preferred working in dark color schemes, but because the color of visual studio 2005 &amp; 2008 was light, it was difficult to get a complete dark working environment.</p>
<p>But as the new Visual Studio IDE is built using WPF, we can customize the theme of the IDE using the <a href="http://visualstudiogallery.msdn.microsoft.com/en-us/20cd93a2-c435-4d00-a797-499f16402378" target="_blank">Visual Studio Color Theme Editor</a>. This is one of my favorite extensions for Visual Studio 2010. The extension comes with few built-in color schemes, that are actually quite good. But, I wanted my IDE to be more like <a href="http://www.microsoft.com/expression/products/Blend_Overview.aspx" target="_blank">Expression Blend</a>. So, I have created my own theme for Visual Studio 2010, which is not yet complete. But, if you like it then give it a try.</p>
<h3><strong>Dark:</strong></h3>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/vs2010_full.jpg" target="_blank"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Visual Studio 2010 Expression Theme (Click here for full view)" src="http://www.nerdpad.com/wp-content/uploads/2010/04/vs2010_expression_thumb.jpg" border="0" alt="Visual Studio 2010 Expression Theme" width="700" height="485" /></a></p>
<p>Some parts of the Visual Studio IDE like the Solution Explorer, Property Window, Scroll Bars etc are rendered natively (your current windows theme). So, there is no way (that I know) to customize the color of those particular parts of the IDE.</p>
<h3><strong>Download</strong></h3>
<div id="scid:fb3a1972-4489-4e52-abe7-25a00bb07fdf:b21e3c62-8c1e-45d4-b2d0-30ab6389f8a7" class="wlWriterEditableSmartContent" style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px">
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/Expression_ColorScheme.zip">The Expression color theme</a><br />
<a title="Metroline: A VS2010 Color Scheme" href="http://winterdom.com/2010/04/metroline-a-vs2010-color-scheme">Color scheme Metroline by Tomas Restrepo</a></div>
<p>To import the Expression theme, install the <a href="http://visualstudiogallery.msdn.microsoft.com/en-us/20cd93a2-c435-4d00-a797-499f16402378" target="_blank">Visual Studio Color Theme Editor</a> extension and then import the file from the Customize Colors dialog.</p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/04/import_theme.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="import_theme" src="http://www.nerdpad.com/wp-content/uploads/2010/04/import_theme_thumb.jpg" border="0" alt="import_theme" width="531" height="300" /></a></p>
<h3><strong>Gray:</strong></h3>
<p>The author of the extension has given detailed explanation about how to create the lighter version of the Expression Blend theme on his blog. Check out his post <a href="http://blogs.msdn.com/visualstudio/archive/2010/01/04/changing-visual-studio-s-color-palette.aspx">here</a> or click <a href="http://www.nerdpad.com/wp-content/uploads/2010/04/Expression_Gray.zip">here</a> to download the gray theme.</p>
<p><a href="http://blogs.msdn.com/visualstudio/archive/2010/01/04/changing-visual-studio-s-color-palette.aspx" target="_blank"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Visual Studio 2010 Expression Gray Theme" src="http://www.nerdpad.com/wp-content/uploads/2010/04/vs2010_Gray.png" border="0" alt="Visual Studio 2010 Expression Theme" width="640" height="468" /></a></p>
<p>PS: If you enhance this theme, then please share.</p>
<h3><strong>Update (05/03/2010):</strong></h3>
<ul>
<li> Fixed tool window button colors.</li>
<li>Fixed dropdown &amp; combobox colors.</li>
</ul>
<h3><strong>Update (05/20/2010):</strong></h3>
<ul>
<li> Fixed panel tab hover colors.</li>
<li>Fixed command bar colors.</li>
</ul>
<div class="shr-publisher-287"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/-MifIBIZJaE4vKVa-zSJkXQNXDU/0/da"><img src="http://feedads.g.doubleclick.net/~a/-MifIBIZJaE4vKVa-zSJkXQNXDU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/-MifIBIZJaE4vKVa-zSJkXQNXDU/1/da"><img src="http://feedads.g.doubleclick.net/~a/-MifIBIZJaE4vKVa-zSJkXQNXDU/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/aNHQbnFvusM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme/feed</wfw:commentRss>
		<slash:comments>25</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Windows 7 Jumplist Disappear</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/RAJ-s6NBnHc/windows-7-jumplist-disappear</link>
		<comments>http://www.nerdpad.com/windows/windows-7-jumplist-disappear#comments</comments>
		<pubDate>Fri, 02 Apr 2010 16:10:57 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[windows]]></category>
		<category><![CDATA[disappear]]></category>
		<category><![CDATA[jumplist]]></category>
		<category><![CDATA[windows 7]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/windows/windows-7-jumplist-disappear</guid>
		<description><![CDATA[Recently my Windows 7 jumplist disappeared. I tried pinning each item again, but nothing appeared. If you are facing the same issue, then follow the following simple steps to restore Windows 7 Jumplist capabilities. Warning: All you existing jumplist items will be removed. You need to pin each item again. Fix Delete all the files [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/misc/trying-out-windows-7-beta' rel='bookmark' title='Permanent Link: Trying Out Windows 7 Beta'>Trying Out Windows 7 Beta</a></li>
<li><a href='http://www.nerdpad.com/windows/windows-7-bug-in-desktop-slideshow' rel='bookmark' title='Permanent Link: Windows 7 Bug In Desktop Slideshow?'>Windows 7 Bug In Desktop Slideshow?</a></li>
<li><a href='http://www.nerdpad.com/how-to/preventing-or-removing-autoruninf-virus' rel='bookmark' title='Permanent Link: Preventing Or Removing Autorun.inf virus'>Preventing Or Removing Autorun.inf virus</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Recently my Windows 7 jumplist disappeared. I tried pinning each item again, but nothing appeared. If you are facing the same issue, then follow the following simple steps to restore Windows 7 Jumplist capabilities.</p>
<p><font color="#ff0000"><strong>Warning:</strong> All you existing jumplist items will be removed. You need to pin each item again.</font></p>
<h3><strong>Fix</strong></h3>
<ul>
<li><strong>Delete all the files from the following locations        <br /></strong>%APPDATA%\Microsoft\Windows\Recent\AutomaticDestinations       <br />%APPDATA%\Microsoft\Windows\Recent\CustomDestinations </li>
<li>Reboot </li>
<li>Pin all the required items again. </li>
</ul>
<p>Hope it helps.</p>
<div class="shr-publisher-278"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/misc/trying-out-windows-7-beta' rel='bookmark' title='Permanent Link: Trying Out Windows 7 Beta'>Trying Out Windows 7 Beta</a></li>
<li><a href='http://www.nerdpad.com/windows/windows-7-bug-in-desktop-slideshow' rel='bookmark' title='Permanent Link: Windows 7 Bug In Desktop Slideshow?'>Windows 7 Bug In Desktop Slideshow?</a></li>
<li><a href='http://www.nerdpad.com/how-to/preventing-or-removing-autoruninf-virus' rel='bookmark' title='Permanent Link: Preventing Or Removing Autorun.inf virus'>Preventing Or Removing Autorun.inf virus</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/bb2Q3l_piAkNJL-BWbxWrYfJgP4/0/da"><img src="http://feedads.g.doubleclick.net/~a/bb2Q3l_piAkNJL-BWbxWrYfJgP4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/bb2Q3l_piAkNJL-BWbxWrYfJgP4/1/da"><img src="http://feedads.g.doubleclick.net/~a/bb2Q3l_piAkNJL-BWbxWrYfJgP4/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/RAJ-s6NBnHc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/windows/windows-7-jumplist-disappear/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/windows/windows-7-jumplist-disappear?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/Je-zF5DVhOI/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed</link>
		<comments>http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed#comments</comments>
		<pubDate>Wed, 31 Mar 2010 14:50:14 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[IIS6 Metabase Compatibility]]></category>
		<category><![CDATA[Installer]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[Setup]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed</guid>
		<description><![CDATA[Although how much I hate creating setup packages, I had to create a few setups for some of my projects recently. While I was working on setup projects, I found that, the capabilities of Visual Studio Setup &#38; Deployment projects are shockingly limited, and not to mention I faced a lot of issues while creating [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Although how much I hate creating setup packages, I had to create a few setups for some of my projects recently. While I was working on setup projects, I found that, the capabilities of Visual Studio Setup &amp; Deployment projects are shockingly limited, and not to mention I faced a lot of issues while creating setup projects in Visual Studio. Few people suggested me to use <a title="Windows Installer XML (WiX) toolset" href="http://wix.sourceforge.net/" target="_blank">WiX</a>. WiX certainly is good and far more flexible solution for building Windows Installer Setup Packages, but it has got a very steep learning curve.</p>
<p>I will be making few posts in future about the problems, that I faced during my experience creating setup packages using Visual Studio. So, here you go. Here is the first problem.</p>
<h3><strong>The Problem</strong></h3>
<p>I was working on a simple Web Setup project in Visual Studio 2008. The setup worked fine in XP &amp; Windows 2003 server. But, when I tried installing the setup in Windows Server 2008, I got this nice error message that said. <strong>“The installer was interrupted before &lt;MyApplicationName&gt; could be installed. You need to restart the installer to try again.”</strong> <img src='http://www.nerdpad.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/03/Installation_Incomplete.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Installation_Incomplete" border="0" alt="Installation_Incomplete" src="http://www.nerdpad.com/wp-content/uploads/2010/03/Installation_Incomplete_thumb.jpg" width="515" height="425" /></a></p>
<p>Having faced many problems earlier with msi packages, I at least knew how to start the msi package in verbose mode to create the log files.</p>
<p>Launch your msi in verbose mode:</p>
<pre class="brush: plain; toolbar: false;">msiexec /i yoursetup.msi /lv &quot;C:\yourdirectory\logfile.txt&quot;</pre>
<p>I searched for terms like “ERROR” &amp; “FATAL” in the log file <img src='http://www.nerdpad.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I got this.</p>
<pre class="brush: plain; toolbar: false;">Action ended 15:57:43: WEBCA_MYSETUPTARGETVDIR. Return value 1.
MSI (c) (8C:20) [15:57:43:204]: Doing action: WEBCA_SetTARGETSITE
Action start 15:57:43: WEBCA_SetTARGETSITE.
MSI (c) (8C:20) [15:57:43:206]: Note: 1: 2235 2:  3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'WEBCA_SetTARGETSITE'
MSI (c) (8C:A0) [15:57:43:226]: Invoking remote custom action. DLL: C:\Users\ADMINI~1\AppData\Local\Temp\1\MSI4225.tmp, Entrypoint: SetTARGETSITE
INFO   : [03/31/2010 15:57:43:286] [SetTARGETSITE                           ]: Custom Action is starting...
INFO   : [03/31/2010 15:57:43:287] [SetTARGETSITE                           ]: CoInitializeEx - COM initialization Apartment Threaded...
ERROR  : [03/31/2010 15:57:43:290] [SetTARGETSITE                           ]: FAILED:    -2147221164
ERROR  : [03/31/2010 15:57:43:291] [SetTARGETSITE                           ]: Custom Action failed with code: '340'
INFO   : [03/31/2010 15:57:43:293] [SetTARGETSITE                           ]: Custom Action completed with return code: '340'
Action ended 15:57:43: WEBCA_SetTARGETSITE. Return value 3.
MSI (c) (8C:20) [15:57:43:297]: Doing action: FatalErrorForm
Action start 15:57:43: FatalErrorForm.</pre>
<p>I could see that the action WEBCA_SetTARGETSITE was failing. But I had not idea what was wrong, except that the term itself said Set Target Site failed. So I turned up to Google and landed on <a title="VS2008 Web Setup Project and Win2008" href="http://www.galcho.com/Blog/PermaLink.aspx?guid=a22cbe3d-333e-4b15-b61a-aa6675c8ec27" target="_blank">this blog post</a>.</p>
<p>So the real problem is that my setup is unable to get the “Default Web Site” from IIS7.</p>
<h3><strong>The Solution</strong></h3>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2010/03/RoleManager.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="RoleManager" border="0" alt="RoleManager" align="left" src="http://www.nerdpad.com/wp-content/uploads/2010/03/RoleManager_thumb.jpg" width="403" height="142" /></a> I installed the “IIS6 Metabase Compatibility” role using Role Manager as mentioned in the blog post and my setup started working. Existing software &amp; scripts can interface with IIS7 only if the Metabase compatibility component is installed in IIS7. </p>
<p>&#160;</p>
<p>&#160;</p>
<p>Thanks to <a href="http://www.galcho.com/Blog/" target="_blank">Galin Iliev</a>.</p>
<div class="shr-publisher-276"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/t_B2tvx9c47e1hmzSwt2V-PP5fo/0/da"><img src="http://feedads.g.doubleclick.net/~a/t_B2tvx9c47e1hmzSwt2V-PP5fo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/t_B2tvx9c47e1hmzSwt2V-PP5fo/1/da"><img src="http://feedads.g.doubleclick.net/~a/t_B2tvx9c47e1hmzSwt2V-PP5fo/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/Je-zF5DVhOI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>.NET Type Forwarding – Moving Types Between Assemblies</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/41Os2FRqUY8/net-type-forwarding-moving-types-between-assemblies</link>
		<comments>http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies#comments</comments>
		<pubDate>Mon, 04 Jan 2010 07:22:14 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Attribute]]></category>
		<category><![CDATA[Type Forwarding]]></category>
		<category><![CDATA[TypeForwardedTo]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies</guid>
		<description><![CDATA[I learned about this really cool feature in the .NET framework while reading an MS certification book, and could not stop blogging about it. Type forwarding in .NET allows you to move type from one assembly to another without recompiling applications that use the old assembly. Important Notes: Microsoft Visual Basic 2005 does not support [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically' rel='bookmark' title='Permanent Link: C# &#8211; Change log4net Log Path and Level Programmatically'>C# &#8211; Change log4net Log Path and Level Programmatically</a></li>
<li><a href='http://www.nerdpad.com/asp-net/writing-provide-independent-adonet-data-access-layer' rel='bookmark' title='Permanent Link: Writing Provider Independent .NET Data Access Code'>Writing Provider Independent .NET Data Access Code</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I learned about this really cool feature in the .NET framework while reading an MS certification book, and could not stop blogging about it. Type forwarding in .NET allows you to move type from one assembly to another without recompiling applications that use the old assembly. </p>
<p><strong>Important Notes:</strong></p>
<ol>
<li>Microsoft Visual Basic 2005 does not support the use of the TypeForwardedToAttribute attribute to forward types written in Visual Basic 2005. Applications written in Visual Basic 2005 can use forwarded types written in other languages. </li>
<li>The compilers do not support forwarding generic types in .NET 2.0, 3.0 and 3.5. Support for this was added in .NET 4.0. </li>
</ol>
<p>For this example, I would write one assembly called Animal that would contain a class called Dog, which would be consumed by an application called Consumer1. Later, I would move the Dog class to a new assembly called Canine, and we would see how we can make the Consumer1 application still work using .NET type forwarding feature.</p>
<h3><strong>Animal (Class Library)</strong></h3>
<p>As discussed here is the Dog class that would reside inside the Animal assembly.</p>
<p><strong>Dog.cs</strong></p>
<pre class="brush: csharp; toolbar: false;">namespace Animal
{
    using System;
    public class Dog
    {
        /// &lt;summary&gt;
        /// Make the dog bark.
        /// &lt;/summary&gt;
        public void Bark()
        {
            Console.WriteLine(&quot;Arrgh.... Woof Woof!&quot;);
        }
    }
}</pre>
<p>It&#8217;s a very simple class that contains a public method called Bark, which would output &quot;Arrgh&#8230;. Woof Woof!&quot; to the console when invoked.</p>
<h3><strong>Consumer1 (Console Application)</strong></h3>
<p>I would now write our first application that would consume the animal assembly. Its a simple console application that has reference to the Animal assembly.</p>
<pre class="brush: csharp; toolbar: false;">namespace Consumer1
{
    using System;
    using Animal;
    /// &lt;summary&gt;
    /// The program.
    /// &lt;/summary&gt;
    internal class Program
    {
        #region Methods
        /// &lt;summary&gt;
        /// The entry point.
        /// &lt;/summary&gt;
        /// &lt;param name=&quot;args&quot;&gt;
        /// The command line arguments.
        /// &lt;/param&gt;
        private static void Main(string[] args)
        {
            Console.WriteLine(&quot;Consumer 1 Application&quot;);
            Dog dog = new Dog();
            dog.Bark();
            Console.ReadKey();
        }
        #endregion
    }
}</pre>
<p>In the main method of the Consumer1 application I have created an instance of the Dog class and then called its Bark method. When we run this application we would get the following output.</p>
<p><strong>Output:</strong></p>
<p>Consumer 1 Application<br />
  <br />Arrgh&#8230;. Woof Woof!</p>
<h3><strong>Canine (Class Library)</strong></h3>
<p>I moved the Dog class from Animal assembly to the new assembly called Canine.</p>
<pre class="brush: csharp; toolbar: false;">namespace Animal
{
    using System;
    public class Dog
    {
        /// &lt;summary&gt;
        /// Make the dog bark.
        /// &lt;/summary&gt;
        public void Bark()
        {
            Console.WriteLine(&quot;Arrgh.... Woof Woof! (Inside New Assembly)&quot;);
        }
    }
}</pre>
<p>The only difference in the class definition here, is the text that I output to the console when the Bark method is invoked. I have changed it so that we can easily spot out that our old application (Consumer1) is accessing the Dog class from the new Canine assembly.</p>
<p>Also you might wonder, if the assembly name is Canine then why is the namespace for the Dog class still Animal? It&#8217;s necessary to keep the old namespaces while moving types between assemblies for the old applications to find the type in the new assembly.</p>
<p>If we deploy the Animal assembly without the Dog class then existing installed applications that were compiled against the old Animal assembly would break. Unless, we use type forwarding in the modified Animal assembly and let it know where to look for the Dog class when its requested. To enable type forwarding we need to do the following things:</p>
<ol>
<li>Add a reference of the new Canine assembly to the Animal assembly. </li>
<li>Add the TypeForwardedToAttribute attribute to the animal assembly and specify the type to be forwarded. </li>
</ol>
<p>Normally we add all assembly attributes to the AssemblyInfo.cs file. The TypeForwardedToAttribute attribute resides in the System.Runtime.CompilerServices namespace. Add the following line to the AssemblyInfo.cs.</p>
<pre class="brush: csharp; toolbar: false;">using System.Runtime.CompilerServices;

// Type forward the dog class to the Canine assembly
[assembly: TypeForwardedTo(typeof(Animal.Dog))]</pre>
<p>When any application would look for the Dog class in the Animal assembly it would be forwarded to the Canine assembly. Now when we deploy the new Animal &amp; Canine assembly though the Consumer1 application does not have a reference to the Canine assembly, it would still find the Dog class and produce the following output.</p>
<p><strong>Output:</strong></p>
<p>Consumer 1 Application<br />
  <br />Arrgh&#8230;. Woof Woof! (Inside New Assembly)</p>
<p>Deploying both the assemblies are important. Otherwise the Consumer1 application will not find the Dog class, and would crash.</p>
<p><strong>Source Code:</strong></p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:a58e34f0-f1ca-4068-b2a3-e74fd361c797" class="wlWriterEditableSmartContent">
<div>Download the source code accompanying this post here. <a href="http://www.nerdpad.com/wp-content/uploads/2010/01/TypeForwardedToSample.zip" target="_self">TypeForwardedToSample.zip</a></div>
</p>
</div>
<div class="shr-publisher-264"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically' rel='bookmark' title='Permanent Link: C# &#8211; Change log4net Log Path and Level Programmatically'>C# &#8211; Change log4net Log Path and Level Programmatically</a></li>
<li><a href='http://www.nerdpad.com/asp-net/writing-provide-independent-adonet-data-access-layer' rel='bookmark' title='Permanent Link: Writing Provider Independent .NET Data Access Code'>Writing Provider Independent .NET Data Access Code</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/R9UVyaKkS47tW8tNTB5eSCGm0Hg/0/da"><img src="http://feedads.g.doubleclick.net/~a/R9UVyaKkS47tW8tNTB5eSCGm0Hg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/R9UVyaKkS47tW8tNTB5eSCGm0Hg/1/da"><img src="http://feedads.g.doubleclick.net/~a/R9UVyaKkS47tW8tNTB5eSCGm0Hg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/41Os2FRqUY8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>C# – Change log4net Log Path and Level Programmatically</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/iONK8ab2Dzg/c-change-log4net-log-path-and-level-programmatically</link>
		<comments>http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically#comments</comments>
		<pubDate>Tue, 10 Nov 2009 15:07:30 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[log level]]></category>
		<category><![CDATA[log path]]></category>
		<category><![CDATA[log4net]]></category>
		<category><![CDATA[RollingFileAppender]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically</guid>
		<description><![CDATA[Log4Net makes it incredibly easy to implement logging functionality in your application. Log4Net configuration can be little bit tricky, but its easy to learn. Most of the time when I am working on a project the application configurations including log path and level are fetched from the database. Log4Net doesn’t provide any straight forward way [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/writing-provide-independent-adonet-data-access-layer' rel='bookmark' title='Permanent Link: Writing Provider Independent .NET Data Access Code'>Writing Provider Independent .NET Data Access Code</a></li>
<li><a href='http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies' rel='bookmark' title='Permanent Link: .NET Type Forwarding &#8211; Moving Types Between Assemblies'>.NET Type Forwarding &#8211; Moving Types Between Assemblies</a></li>
<li><a href='http://www.nerdpad.com/how-to/c-sharp-obtain-list-of-sql-server-instances' rel='bookmark' title='Permanent Link: C# Obtain List Of SQL Server Instances'>C# Obtain List Of SQL Server Instances</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Log4Net makes it incredibly easy to implement logging functionality in your application. Log4Net configuration can be little bit tricky, but its easy to learn.</p>
<p>Most of the time when I am working on a project the application configurations including log path and level are fetched from the database.</p>
<p>Log4Net doesn’t provide any straight forward way of fetching log file path or level from database (because its not necessary). To change the log file path and level programmatically we have to write our own log file appender.</p>
<p>For this demonstration I will write one rolling file appender. The custom file appender class should inherit from the log4net’s RollingFileAppender class.  We have to override the <strong>File</strong> property of the appender and change the log path. My rolling file appender class looks like this:</p>
<h3><strong>My Rolling File Appender:</strong></h3>
<pre class="brush: csharp">namespace MyLog4Net.LogAppenders
{
    using System;

    using log4net;
    using log4net.Appender;

    using MyLog4Net.Interfaces;
    using MyLog4Net.Services;

    /// &lt;summary&gt;
    /// My log4net Rolling file appender.
    /// &lt;/summary&gt;
    public class MyLog4NetFileAppender : RollingFileAppender
    {
        #region Constants and Fields

        /// &lt;summary&gt;
        /// Component parameter business layer
        /// &lt;/summary&gt;
        private static IConfigService service;

        #endregion

        #region Constructors and Destructors

        /// &lt;summary&gt;
        /// Initializes a new instance of the &lt;see cref="MyLog4NetFileAppender"/&gt; class.
        /// &lt;/summary&gt;
        public MyLog4NetFileAppender()
            : this(new ConfigService())
        {
        }

        /// &lt;summary&gt;
        /// Initializes a new instance of the &lt;see cref="MyLog4NetFileAppender"/&gt; class.
        /// &lt;/summary&gt;
        /// &lt;param name="configService"&gt;
        /// The config service.
        /// &lt;/param&gt;
        public MyLog4NetFileAppender(IConfigService configService)
        {
            service = configService;

            // get the log level
            // must be a proper log4net Threshold
            string logLevel = service.GetLogLevel();

            // set the log level
            LogManager.GetRepository().Threshold = LogManager.GetRepository().LevelMap[logLevel];
        }

        #endregion

        #region Properties

        /// &lt;summary&gt;
        /// Gets or sets the log file name.
        /// &lt;/summary&gt;
        /// &lt;value&gt;The log file name.&lt;/value&gt;
        public override string File
        {
            get
            {
                return base.File;
            }

            set
            {
                try
                {
                    // get the log directory
                    string logDirectory = service.GetLogPath();

                    // get the log file name from the config file.
                    string logFileName = value.Substring(value.LastIndexOf('\\') + 1);

                    // build the new log path
                    if (!logDirectory.EndsWith("\\") || !logDirectory.EndsWith("/"))
                    {
                        logDirectory += "\\";
                    }

                    // replace the new log file path
                    base.File = logDirectory + logFileName;
                }
                catch (Exception ex)
                {
                    // TODO: Log the error
                    // use the default
                    base.File = value;
                }
            }
        }

        #endregion
    }
}</pre>
<h3><strong> </strong></h3>
<h3><strong>Setting The Log Level (Threshold):</strong></h3>
<pre class="brush: csharp">public MyLog4NetFileAppender(IConfigService configService)
{
    // Service layer that will be used to fetch config data
    service = configService;

    // get the log level
    // must be a proper log4net Threshold
    string logLevel = service.GetLogLevel();

    // set the log level
    LogManager.GetRepository().Threshold = LogManager.GetRepository().LevelMap[logLevel];
}</pre>
<p>In the constructor of this class I fetch the log threshold configured in the database using the service.GetLogLevel() method. The LogManager.GetRepository() returns the default log4net repository of the calling assembly. LogManager.GetRepository().LevelMap gives us a set of default log4net levels. We change the log level by pasing the value fetched from the database to the current repositories Threshold property.</p>
<h3><strong>Setting The Log Path:</strong></h3>
<pre class="brush: csharp">public override string File
{
    get
    {
        return base.File;
    }

    set
    {
        try
        {
            // get the log directory
            string logDirectory = service.GetLogPath();

            // get the log file name from the config file.
            string logFileName = value.Substring(value.LastIndexOf('\\') + 1);

            // build the new log path
            if (!logDirectory.EndsWith("\\") || !logDirectory.EndsWith("/"))
            {
                logDirectory += "\\";
            }

            // replace the new log file path
            base.File = logDirectory + logFileName;
        }
        catch (Exception ex)
        {
            // TODO: Log the error
            // use the default
            base.File = value;
        }
    }
}</pre>
<p>When log4net is initializing the File property of the file appender would be called. Here the value would be the file name that was set in the log4net configuration file. In this property we extract the file name and then append the log path that we fetched from the database.</p>
<h3><strong>Using Our Custom Appender:</strong></h3>
<p>To use our custom appender we would create a log4net appender section in the config file and use our appender in the appender type. I like placing my log4net configuration is a different file. My log4net configuration file looks like:</p>
<h3><strong>Log4Net Configuration File:</strong></h3>
<pre class="brush: xml">&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;configuration&gt;

    &lt;configSections&gt;
        &lt;section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/&gt;
    &lt;/configSections&gt;

    &lt;!-- log4net --&gt;
    &lt;log4net&gt;
        &lt;!-- Define some output appenders --&gt;
        &lt;appender name="MyRollingFileAppender" type="MyLog4Net.LogAppenders.MyLog4NetFileAppender"&gt;
            &lt;param name="File" value="..\\Log\\MyApplication-log-file.txt" /&gt;
            &lt;param name="AppendToFile" value="true" /&gt;
            &lt;param name="RollingStyle" value="Size" /&gt;
            &lt;param name="StaticLogFileName" value="true" /&gt;
            &lt;layout type="log4net.Layout.PatternLayout"&gt;
                &lt;param name="Header" value="[Header]&amp;#13;&amp;#10;" /&gt;
                &lt;param name="Footer" value="[Footer]&amp;#13;&amp;#10;" /&gt;
                &lt;param name="ConversionPattern" value="%d [%t] %-5p %C %M - %m%n" /&gt;
            &lt;/layout&gt;
        &lt;/appender&gt;
        &lt;!-- Setup the root category, add the appenders and set the default level --&gt;
        &lt;!-- Setup the root category, add the appenders and set the default level
                ALL
                DEBUG
                INFO
                WARN
                ERROR
                FATAL
                OFF
            For example, setting the threshold of an appender to DEBUG will also allow INFO,
            WARN, ERROR and FATAL messages to log along with DEBUG messages. (DEBUG is the
            lowest level). This is usually acceptable as there is little use for DEBUG
            messages without the surrounding INFO, WARN, ERROR and FATAL messages.
            Similarly, setting the threshold of an appender to ERROR will filter out DEBUG,
            INFO and ERROR messages but not FATAL messages.
        --&gt;
        &lt;root&gt;
            &lt;level value="ALL" /&gt;
            &lt;appender-ref ref="MyRollingFileAppender" /&gt;
        &lt;/root&gt;
    &lt;/log4net&gt;
&lt;/configuration&gt;</pre>
<p>Notice that instead of using log4net’s RollingFileAppender class I am using our MyLog4NetFileAppender class.</p>
<h3><strong>Initializing Log4Net:</strong></h3>
<p>To initialize log4net put the following code in the AssemblyInfo.cs file.</p>
<pre class="brush: csharp">/* Configure log4net
   log4net configuration will be searched in the .config file*/
[assembly: XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]</pre>
<p>The above code tells log4net to look for log4net.config file in the application and initialize itself.</p>
<p>Now everything is ready you can now run your application. To check if the code works or not you can put breakpoints in the constructor and File property of the appender.</p>
<h3><strong>Source:</strong></h3>
<p>Download the source code for this article <a href="http://www.nerdpad.com/wp-content/uploads/2009/11/MyLog4Net.zip" target="_self">MyLog4Net.zip</a></p>
<div class="shr-publisher-241"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/writing-provide-independent-adonet-data-access-layer' rel='bookmark' title='Permanent Link: Writing Provider Independent .NET Data Access Code'>Writing Provider Independent .NET Data Access Code</a></li>
<li><a href='http://www.nerdpad.com/how-to/net-type-forwarding-moving-types-between-assemblies' rel='bookmark' title='Permanent Link: .NET Type Forwarding &#8211; Moving Types Between Assemblies'>.NET Type Forwarding &#8211; Moving Types Between Assemblies</a></li>
<li><a href='http://www.nerdpad.com/how-to/c-sharp-obtain-list-of-sql-server-instances' rel='bookmark' title='Permanent Link: C# Obtain List Of SQL Server Instances'>C# Obtain List Of SQL Server Instances</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/6Dbl8M7Y0x0M5b6Yw5l4w9Xb9cM/0/da"><img src="http://feedads.g.doubleclick.net/~a/6Dbl8M7Y0x0M5b6Yw5l4w9Xb9cM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/6Dbl8M7Y0x0M5b6Yw5l4w9Xb9cM/1/da"><img src="http://feedads.g.doubleclick.net/~a/6Dbl8M7Y0x0M5b6Yw5l4w9Xb9cM/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/iONK8ab2Dzg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/how-to/c-change-log4net-log-path-and-level-programmatically?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Visual Studio 2010 Beta 2 Now Out For Public</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/adOmYUNl-K0/visual-studio-2010-beta-2-now-out-for-public</link>
		<comments>http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public#comments</comments>
		<pubDate>Thu, 22 Oct 2009 11:49:14 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public</guid>
		<description><![CDATA[Finally Visual Studio 2010 Beta 2 is out for public (and not just subscribers).&#160; To download visit this link or download the ISO from here. Make sure you completely uninstall Visual Studio 2010 Beta 1 before installing Beta 2. Visual Studio 2010 brings many new features that we were only able to achieve using 3rd [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Finally Visual Studio 2010 Beta 2 is out for public (and not just subscribers).&#160; To download visit this <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=dc333ac8-596d-41e3-ba6c-84264e761b81&amp;displaylang=en#filelist" target="_blank">link</a> or download the ISO from <a href="http://download.microsoft.com/download/F/C/9/FC9131D2-688C-43DC-91CF-53359D4882E7/VS2010B2Ult.iso" target="_blank">here</a>. <strong>Make sure you completely uninstall Visual Studio 2010 Beta 1 before installing Beta 2.</strong></p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2009/10/image_thumb_04B9B051.png"><img title="image_thumb_04B9B051" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="496" alt="image_thumb_04B9B051" src="http://www.nerdpad.com/wp-content/uploads/2009/10/image_thumb_04B9B051_thumb.png" width="708" border="0" /></a> </p>
<p>Visual Studio 2010 brings many new features that we were only able to achieve using 3rd party add-ins like CodeRush/Resharper. </p>
<h3><strong>Please visit the below links to learn more about VS 2010 and .NET 4.0 features:</strong></h3>
<ul>
<li><a href="http://weblogs.asp.net/scottgu/archive/2009/08/25/vs-2010-and-net-4-series.aspx" target="_blank">ScottGu’s VS 2010 and .NET 4 Blog Post series</a>. </li>
<li><a href="http://www.hanselman.com/blog/TheMinutesOn9Channel9VideoInterviewsWithTheASPNET4Team.aspx" target="_blank">Interview with ASP.NET 4 team on channel 9 by Scott Hanselman</a> </li>
<li><a href="http://channel9.msdn.com/shows/10-4/" target="_blank">Channel 9 shows discussing VS 2010 and .NET 4.0</a> </li>
</ul>
<div class="shr-publisher-237"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-dark-expression-blend-color-theme' rel='bookmark' title='Permanent Link: Visual Studio 2010 Dark Expression Blend Color Theme'>Visual Studio 2010 Dark Expression Blend Color Theme</a></li>
<li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/visual-studio/visual-studio-2010-installing-msdn-documentation' rel='bookmark' title='Permanent Link: Visual Studio 2010: Installing MSDN Documentation'>Visual Studio 2010: Installing MSDN Documentation</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/txpfsXaBz3tFIdX6HYl5WfoUvCk/0/da"><img src="http://feedads.g.doubleclick.net/~a/txpfsXaBz3tFIdX6HYl5WfoUvCk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/txpfsXaBz3tFIdX6HYl5WfoUvCk/1/da"><img src="http://feedads.g.doubleclick.net/~a/txpfsXaBz3tFIdX6HYl5WfoUvCk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/adOmYUNl-K0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>Building The E-TextEditor On Ubuntu 9.04 64 Bit</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/86gk1fXYfwU/building-and-running-etexteditor-on-ubuntu-64-bit</link>
		<comments>http://www.nerdpad.com/how-to/building-and-running-etexteditor-on-ubuntu-64-bit#comments</comments>
		<pubDate>Sat, 30 May 2009 21:35:20 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[64bit]]></category>
		<category><![CDATA[etexteditor]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/?p=212</guid>
		<description><![CDATA[E-TextEditor a.k.a e is my favorite text editor on windows. AFAIK there is no text editor on linux that matches what e can do except for VIM. When I saw the post about making e open source I was pretty exited and wanted to try it out. So I grabbed the source from GitHub and [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/how-to/installing-adobe-air-and-tweetdeck-on-ubuntu-904-64-bit' rel='bookmark' title='Permanent Link: Installing Adobe Air and TweetDeck on Ubuntu 9.04 64 Bit'>Installing Adobe Air and TweetDeck on Ubuntu 9.04 64 Bit</a></li>
<li><a href='http://www.nerdpad.com/how-to/ubuntu-getting-the-multmedia-keys-to-work-with-amarok-in-dell-xps-m1330' rel='bookmark' title='Permanent Link: Ubuntu &#8211; Getting The Multimedia Keys To Work With Amarok In Dell XPS M1330'>Ubuntu &#8211; Getting The Multimedia Keys To Work With Amarok In Dell XPS M1330</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>E-TextEditor a.k.a e is my favorite text editor on windows. AFAIK there is no text editor on linux that matches what e can do except for VIM. When I saw the post about making <a href="http://e-texteditor.com/blog/2009/releasing-the-source" target="_blank">e open source </a>I was pretty exited and wanted to try it out.</p>
<p>So I grabbed the source from GitHub and thought of building it. I am making this post to explain all the problems that I faced while building e. You may or may not face the same problem or you may face different problem altogether, so good luck.</p>
<h3>Grab The Source</h3>
<p>Download the latest source code from <a href="http://github.com/etexteditor/e/tree/master" target="_blank">http://github.com/etexteditor/e/tree/master</a> using the download button available or by using git tool to clone the repository.</p>
<p>Extract the source code somewhere and open the <strong>linux-notes.txt</strong> in your favorite text editor.</p>
<h3>Downloading &amp; Building E-TextEditor</h3>
<p>I am a linux n00b so I choose the easiest way to build e according to linux-notes.txt   </p>
<pre class="brush: bash;"># The easiest way to build is to use the supplied scripts (example shows debug build):
cd external
sudo ./get-packages-ubuntu.sh bakefile
./get_externals_linux.sh
./build_externals_linux.sh debug
cd ..
cd src
make DEBUG=1
./e.debug</pre>
<p>&#160;</p>
<p>I face problem while getting external packages for linux and while building WebKit. The problem was <strong>get-packages-ubuntu.sh</strong> was unable to install <strong>libwxgtk2.8-dev</strong> due to header mismatch (Sorry but I don&#8217;t remember the exact error. I guess it includes wxWidgets header files) and the link to download <strong>tomcrypt</strong> and <strong>tommath</strong> libraries were not found.</p>
<p>I had to download wxWidget headers from their site. I downloaded the amd64 package because I am running Ubuntu 9.04 64 bit</p>
<p><a href="http://apt.wxwidgets.org/dists/jaunty-wx/main/binary-amd64/wx2.8-headers_2.8.10.1-1_amd64.deb" target="_blank">http://apt.wxwidgets.org/dists/jaunty-wx/main/binary-amd64/wx2.8-headers_2.8.10.1-1_amd64.deb</a></p>
<p>The url&#8217;s mentioned in <strong>get-external-linux.sh</strong> to download tomcrypt and math libraries didn&#8217;t resolve because libtomcrypt.com is down at the moment.</p>
<pre class="brush: bash;">wget -nc http://libtomcrypt.com/files/crypt-1.11.tar.bz2
wget -nc http://math.libtomcrypt.com/files/ltm-0.39.tar.bz2</pre>
<p>So I had download the <a href="http://safari.iki.fi/tom/crypt-1.11.tar.bz2" target="_blank">crypt-1.11.tar.bz2</a> and <a href="http://safari.iki.fi/tom/ltm-0.39.tar.bz2" target="_blank">ltm-0.39.tar.bz2</a> files from <a href="http://safari.iki.fi/tom/" target="_blank">http://safari.iki.fi/tom/</a>. You need to be careful here download the exact version mentioned in the script or else it won&#8217;t compile.</p>
<p>Now that we have all the dependencies we are now ready to install them and then we can build e.</p>
<h3>Install The Dependencies</h3>
<p>Double click on the<strong> wx2.8-headers_2.8.10.1-1_amd64.deb</strong> file and then click on<strong> Install Package</strong> button to install the file.</p>
<p>Now its time to fix problems in <strong>get_external_linux.sh</strong> file. If you can write your own script after reading <strong>get_external_linux.sh</strong> its great, but I am lazy so I just created the <strong>arch</strong> directory inside the <strong>external</strong> directory and copied all the files that were supposed to be downloaded by the _download function.</p>
<pre class="brush: bash;">_download()
{
    # Download external libraries
    echo &quot;Downloading external libraries...&quot;
    echo
    pushd arch
    wget -nc http://libtomcrypt.com/files/crypt-1.11.tar.bz2
    wget -nc http://math.libtomcrypt.com/files/ltm-0.39.tar.bz2
    wget -nc http://www.equi4.com/pub/mk/metakit-2.4.9.7.tar.gz
    wget -nc ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.6.tar.gz
    wget -nc http://kent.dl.sourceforge.net/sourceforge/tinyxml/tinyxml_2_5_3.tar.gz
    wget -nc http://biolpc22.york.ac.uk/pub/2.8.10/wxWidgets-2.8.10.tar.bz2
    wget -nc http://builds.nightly.webkit.org/files/trunk/src/WebKit-r43163.tar.bz2
    popd
}</pre>
<p>I actually downloaded all the files mentioned in the _download function to some location to save me download time just in case if anything goes wrong. You may copy only the missing files and the script will download rest of the files.</p>
<p>Now run the <strong>get_external_linux.sh</strong> file again by issuing the command <strong>./get_external_linux.sh.</strong></p>
<p>Everything would work fine after this step (worked fine for me). Now issue rest of the commands</p>
<pre class="brush: bash;">./build_externals_linux.sh debug
cd ..
cd src
make DEBUG=1</pre>
<p>It will take sometime to complete all these commands. If you get any error here that mean something is wrong with the code and you are missing a patch. All you need to do now is Google the error or fix it yourself or post it <a href="http://github.com/etexteditor/e/issues" target="_blank">here </a>and wait for somebody to answer.</p>
<p>If everything goes fine as expected you can now see <strong>e.debug</strong>. But as you can see the size of e.debug file is more than 200MB use the strip command to remove all debug information.</p>
<pre class="brush: bash;"># source : http://fixnum.org/blog/2009/e_on_fedora
strip e.debug -o e.stripped</pre>
<p>&#160;</p>
<p>Now you will have a e.stripped executable weighing approximately 26MB.</p>
<h3>Getting Themes &amp; Bundles</h3>
<p>E-TextEditor will not run without the Themes &amp; Bundles. So it needs to be downloaded and placed inside .e folder in your home directory. Issue the following commands to download and export e themes and bundles.</p>
<p>Install Subversion if you haven&#8217;t already.</p>
<pre class="brush: bash;">sudo apt-get install subversion
svn checkout http://ebundles.googlecode.com/svn/trunk/ ebundles-read-onlysvn export ebundles-read-only ~/.e/</pre>
<p>&#160;</p>
<p>You will see an message <strong>Export Complete</strong>. Now you can run the e.stripped or e.debug and e should run.</p>
<p><img class="alignnone size-full wp-image-214" title="E-TextEditor Running In Ubuntu" alt="e-texteditor" src="http://www.nerdpad.com/wp-content/uploads/2009/05/e-texteditor.png" width="541" height="507" /></p>
<p>Though I was able to build and run E-TextEditor on my machine but its pretty much useless, it has got lots of bugs and it keeps crashing. I still have to download patches from e repository and rebuild my source.</p>
<p>Hope it helps</p>
<div class="shr-publisher-212"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/how-to/installing-adobe-air-and-tweetdeck-on-ubuntu-904-64-bit' rel='bookmark' title='Permanent Link: Installing Adobe Air and TweetDeck on Ubuntu 9.04 64 Bit'>Installing Adobe Air and TweetDeck on Ubuntu 9.04 64 Bit</a></li>
<li><a href='http://www.nerdpad.com/how-to/ubuntu-getting-the-multmedia-keys-to-work-with-amarok-in-dell-xps-m1330' rel='bookmark' title='Permanent Link: Ubuntu &#8211; Getting The Multimedia Keys To Work With Amarok In Dell XPS M1330'>Ubuntu &#8211; Getting The Multimedia Keys To Work With Amarok In Dell XPS M1330</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/l-B9QWnjRdDy7keLbvsaVmK-Ktk/0/da"><img src="http://feedads.g.doubleclick.net/~a/l-B9QWnjRdDy7keLbvsaVmK-Ktk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/l-B9QWnjRdDy7keLbvsaVmK-Ktk/1/da"><img src="http://feedads.g.doubleclick.net/~a/l-B9QWnjRdDy7keLbvsaVmK-Ktk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/86gk1fXYfwU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/how-to/building-and-running-etexteditor-on-ubuntu-64-bit/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/how-to/building-and-running-etexteditor-on-ubuntu-64-bit?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
		<item>
		<title>MSBuild Context Menu: Build .NET Project/Solution From Explorer</title>
		<link>http://feedproxy.google.com/~r/nerdpad/~3/oCsc5e33sjQ/msbuild-context-menu-build-net-projectsolution-from-explorer</link>
		<comments>http://www.nerdpad.com/windows/msbuild-context-menu-build-net-projectsolution-from-explorer#comments</comments>
		<pubDate>Fri, 15 May 2009 14:50:04 +0000</pubDate>
		<dc:creator>Zuhaib</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[Explorer]]></category>
		<category><![CDATA[MSBuild]]></category>

		<guid isPermaLink="false">http://www.nerdpad.com/windows/msbuild-context-menu-build-net-projectsolution-from-explorer</guid>
		<description><![CDATA[Sometimes I don’t like opening visual studio just for building the latest source code from the repository. I don’t remember who wrote the original registry tweak for this, but the credit goes to the original author. The original tweak allowed to compile Visual Studio 2005 solutions as I use Visual Studio 2008 I had to [...]

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed' rel='bookmark' title='Permanent Link: Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed'>Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Sometimes I don’t like opening visual studio just for building the latest source code from the repository. I don’t remember who wrote the original registry tweak for this, but the credit goes to the original author.</p>
<p>The original tweak allowed to compile Visual Studio 2005 solutions as I use Visual Studio 2008 I had to modify the original tweak to make it work with VS2008. <a href="http://www.nerdpad.com/wp-content/uploads/2009/05/msbuildvs2005vs2008.zip">Click Here</a> to download the modified files.</p>
<p><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image1" src="http://www.nerdpad.com/wp-content/uploads/2009/05/image1.jpg" border="0" alt="image1" width="220" height="92" align="left" /></p>
<p>Unzip the files and you will see two folders. VS2005 is the original one and VS2008 is the modified version. Each  folder contains two registry files. One to add the commands to windows explorer and another to remove them. If you have both VS2005 and VS2008 installed on your machine you can add both the versions to the registry or you can add either of them.</p>
<p><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image2" src="http://www.nerdpad.com/wp-content/uploads/2009/05/image2.jpg" border="0" alt="image2" width="150" height="78" align="right" /> Once you have merged the files in your windows registry you can see two commands added to your explorer context menu when you right click on any solution or project file. One for Debug build and one for Release build.</p>
<p>When you click on either of the commands a command window will open and you can see you build status.</p>
<p><a href="http://www.nerdpad.com/wp-content/uploads/2009/05/image3.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image3" src="http://www.nerdpad.com/wp-content/uploads/2009/05/image3-thumb.jpg" border="0" alt="image3" width="595" height="352" /></a></p>
<div id="scid:12CF4F9E-00D5-4d59-A727-42B7641FBD93:00f8dfe1-5efb-4fc0-a4a1-4c000969b7f1" class="wlWriterEditableSmartContent" style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px">
<div>Download the modified files <a href="http://www.nerdpad.com/wp-content/uploads/2009/05/msbuildvs2005vs2008.zip" target="_self">MSBuild-VS2005-VS2008.zip</a></div>
</div>
<p><strong>Credit goes to the original author.</strong></p>
<div class="shr-publisher-208"></div>

<h4>Possible Related Posts:</h4><ol><li><a href='http://www.nerdpad.com/asp-net/asp-net-webapplication-fails-to-load-in-visual-studio-2008-after-upgrading-in-visual-studio-2010' rel='bookmark' title='Permanent Link: ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010'>ASP.NET WebApplication Fails To Load In Visual Studio 2008 After Upgrading In Visual Studio 2010</a></li>
<li><a href='http://www.nerdpad.com/asp-net/windows-2008-visual-studio-web-setup-the-installer-was-interrupted-before-applicationname-could-be-installed' rel='bookmark' title='Permanent Link: Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed'>Windows 2008 &amp; Visual Studio Web Setup: The installer was interrupted before ApplicationName could be installed</a></li>
<li><a href='http://www.nerdpad.com/net/visual-studio-2010-beta-2-now-out-for-public' rel='bookmark' title='Permanent Link: Visual Studio 2010 Beta 2 Now Out For Public'>Visual Studio 2010 Beta 2 Now Out For Public</a></li>
</ol>
<p><a href="http://feedads.g.doubleclick.net/~a/12Q6vXdVJti-iAULTQ9mPgsmiOE/0/da"><img src="http://feedads.g.doubleclick.net/~a/12Q6vXdVJti-iAULTQ9mPgsmiOE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/12Q6vXdVJti-iAULTQ9mPgsmiOE/1/da"><img src="http://feedads.g.doubleclick.net/~a/12Q6vXdVJti-iAULTQ9mPgsmiOE/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/nerdpad/~4/oCsc5e33sjQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.nerdpad.com/windows/msbuild-context-menu-build-net-projectsolution-from-explorer/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.nerdpad.com/windows/msbuild-context-menu-build-net-projectsolution-from-explorer?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rss</feedburner:origLink></item>
	</channel>
</rss>
