<?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>Kylir&#039;s Blog</title>
	<atom:link href="http://www.kylirhorton.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kylirhorton.com</link>
	<description>The way of the true ninja.</description>
	<lastBuildDate>Mon, 15 Feb 2010 21:12:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Kommand &#8211; An AutoHotKey Script that does VIM-Like Text Editing and Window Management</title>
		<link>http://www.kylirhorton.com/2009/kommand/</link>
		<comments>http://www.kylirhorton.com/2009/kommand/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 17:46:19 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[AutoHotKey]]></category>
		<category><![CDATA[Vi]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=133</guid>
		<description><![CDATA[I&#8217;m a huge fan of AutoHotKey. AutoHotKey has the power to make your keyboard do amazing things. I use it on a daily basis to open programs and folders, manage windows, and edit text amongst many, many other things. I use it so extensively that I find it frustrating to use a computer without it. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a huge fan of AutoHotKey. AutoHotKey has the power to make your keyboard do amazing things. I use it on a daily basis to open programs and folders, manage windows, and edit text amongst many, many other things. I use it so extensively that I find it frustrating to use a computer without it. AutoHotKey has the power to transform you into a computer ninja. I <strong>highly</strong> recommend its use.</p>
<p>Recently I released a part of my AutoHotKey script to the Internets and called it Kommand. Kommand remaps your keyboard and enables VIM-like key bindings that are useful for scooting around a document and making changes. I&#8217;ve found it very useful for coding. The nice thing is that since it is an AutoHotKey script, it is application independent and works wherever text input is needed. In addition to text editing, Kommand provides many keyboard shortcuts that help in window management. You can close, restore, maximize, minimize, and move windows around the screen really easily and quickly.</p>
<p>Kommand is very early software and I am only putting it out there to see if anyone is interested. More information about it can be found in the AutoHotKey forums here:</p>
<p><a href="http://www.autohotkey.com/forum/viewtopic.php?p=281279">http://www.autohotkey.com/forum/viewtopic.php?p=281279</a></p>
<p>Kommand can be downloaded from the following link. The source AutoHotKey script is included along with a few files and executables that are useful for integrating it with Windows. If you use it, please let me know what you think!</p>
<p><a href="http://www.kylirhorton.com/kommand.zip">http://www.kylirhorton.com/kommand.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2009/kommand/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>How to remove the desktop watermark from Windows 7</title>
		<link>http://www.kylirhorton.com/2009/how-to-remove-the-windows-7-watermark/</link>
		<comments>http://www.kylirhorton.com/2009/how-to-remove-the-windows-7-watermark/#comments</comments>
		<pubDate>Tue, 12 May 2009 20:11:10 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=123</guid>
		<description><![CDATA[If you are running a beta or release candidate of Windows 7 or if you&#8217;ve turned test signing on (like me) and you would like to remove the annoying watermark from the corner of your desktop, downloaded and run the following small executable. I&#8217;ve used it without any problems on Windows 7 64-bit RC (Build [...]]]></description>
			<content:encoded><![CDATA[<p>If you are running a beta or release candidate of Windows 7 or if you&#8217;ve turned test signing on (like me) and you would like to remove the annoying watermark from the corner of your desktop, downloaded and run the following small executable. I&#8217;ve used it without any problems on Windows 7 64-bit RC (Build 7100) and the retail version of Windows 7 64-bit (Build 7600). It works like a charm and my machines no longer have the ugly &#8220;Evaluation Copy&#8221; or &#8220;Testing Mode&#8221; text sitting in the bottom corner of my desktop.</p>
<p><a href="http://www.askvg.com/how-to-remove-windows-7-rc-watermark-build-info-from-desktop/">http://www.askvg.com/how-to-remove-windows-7-rc-watermark-build-info-from-desktop/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2009/how-to-remove-the-windows-7-watermark/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Gentoo &#8220;Can&#8217;t Pickle&#8221; Error</title>
		<link>http://www.kylirhorton.com/2009/gentoo-cant-pickle-error/</link>
		<comments>http://www.kylirhorton.com/2009/gentoo-cant-pickle-error/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 15:25:09 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=118</guid>
		<description><![CDATA[I&#8217;m a Gentoo newbie. Actually, I consider myself a newbie to Linux in general. The other day while putting together my own system using Gentoo, I ran into problems every time I tried to emerge something. While portage was calculating dependencies, it would suddenly stop and spit out a cryptic error trace that ended with:
cPickle.PicklingError: [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a Gentoo newbie. Actually, I consider myself a newbie to Linux in general. The other day while putting together my own system using Gentoo, I ran into problems every time I tried to <code>emerge</code> something. While <code>portage</code> was calculating dependencies, it would suddenly stop and spit out a cryptic error trace that ended with:</p>
<p><code>cPickle.PicklingError: Can't pickle &lt;type 'method-wrapper'&gt;: attribute lookup __builtin__.method-wrapper failed</code></p>
<p>None of my Gentoo geek buddies knew what was up. After trying a few things, I came up with a good solution: manually reinstall <code>emerge/portage</code>. I found an excellent tutorial on how to do this at <a href="http://www.gentoo.org">gentoo.org</a>:</p>
<p><a href="http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml">http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2009/gentoo-cant-pickle-error/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disabling the &#8220;Your computer is low on memory&#8221; and &#8220;Close programs to prevent information loss&#8221; dialogs</title>
		<link>http://www.kylirhorton.com/2009/disabling-low-memory-messages/</link>
		<comments>http://www.kylirhorton.com/2009/disabling-low-memory-messages/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 15:28:23 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Registry]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=111</guid>
		<description><![CDATA[
Vista got a lot of things right. It also got a few things wrong. The naggy UAC &#8220;are you sure you want to do this&#8221; prompts is one example. Another annoyance is the sudden dialog that interrupts what you&#8217;re doing to tell you that less than 25% of your RAM is free. This warning would [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.kylirhorton.com/images/vistaLogin.jpg" alt="Windows Vista" /></p>
<p>Vista got a lot of things right. It also got a few things wrong. The naggy UAC &#8220;are you sure you want to do this&#8221; prompts is one example. Another annoyance is the sudden dialog that interrupts what you&#8217;re doing to tell you that less than 25% of your RAM is free. This warning would probably be warranted and helpful on systems with a small amount of RAM, but on mine 25% free memory is hardly anything to worry about &#8211; it means I have at least 1 GB of memory left.</p>
<p><img class="aligncenter size-full wp-image-114" title="Annoying Memory Prompt #1" src="http://www.kylirhorton.com/wp-content/uploads/2009/02/annoying1.png" alt="Annoying Memory Prompt #1" width="398" height="215" /></p>
<p><img class="aligncenter size-full wp-image-115" title="Annoying Prompt #2" src="http://www.kylirhorton.com/wp-content/uploads/2009/02/annoying2.png" alt="Annoying Prompt #2" width="398" height="316" /></p>
<p>Fortunately, like most things, there&#8217;s a fix.</p>
<ol>
<li>Open the registry editor. (Click the Windows orb, type &#8220;regedit&#8221;, and hit enter.)</li>
<li>Browse to <strong>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WDI\DiagnosticModules\</strong>.</li>
<li>Export the following folders. This is your backup in case something goes wrong.<br />
<strong>{5EE64AFB-398D-4edb-AF71-3B830219ABF7}<br />
{45DE1EA9-10BC-4f96-9B21-4B6B83DBF476}<br />
{C0F51D84-11B9-4e74-B083-99F11BA2DB0A}</strong></li>
<li>Take ownership of the each folder mentioned in step 3. (You can take ownership by right clicking the folder and then hitting permissions. Click the advanced button and change owner to your user. Click OK and then give full control to your user group. Hit OK again.)</li>
<li>Delete the folders from step 3.</li>
<li>Reboot and enjoy.</li>
</ol>
<p><strong>Update:</strong> After doing the above steps, you should know that once memory runs out, it is out. You will have no warning. Once your memory gets maxed out, programs will behave very erratic and suddenly crash without warning. I&#8217;ve decided that this side effect can be just as annoying as the popups. If you consistently push your machine&#8217;s memory to its limits, you should think twice about disabling the low memory messages. Having said that, I still prefer using my machine without Vista&#8217;s nagginess.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2009/disabling-low-memory-messages/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>How to Remove an Empty Axialis Toolbar from Visual Studio</title>
		<link>http://www.kylirhorton.com/2009/remove-empty-axialis-toolbar-from-visual-studio/</link>
		<comments>http://www.kylirhorton.com/2009/remove-empty-axialis-toolbar-from-visual-studio/#comments</comments>
		<pubDate>Fri, 20 Feb 2009 14:53:34 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=86</guid>
		<description><![CDATA[
I began having problems with the Axialis icon editing toolbar in Visual Studio a few weeks ago. It would appear as a short, empty, ugly little toolbar within Visual Studio. I would remove it, even delete it out of Visual Studio, and it still hung around and appeared there every time I started up. Fortunately [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="Visual Studio" src="http://www.kylirhorton.com/images/visualStudio.jpg" alt="" width="425" height="100" /></p>
<p>I began having problems with the Axialis icon editing toolbar in Visual Studio a few weeks ago. It would appear as a short, empty, ugly little toolbar within Visual Studio. I would remove it, even delete it out of Visual Studio, and it still hung around and appeared there every time I started up. Fortunately for me, this problem has a simple fix.</p>
<p>If you&#8217;re using a x86 machine, edit the following within the registry:<br />
Key: <strong>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\AddIns\IconWorkshopAddin.Connect</strong><br />
Set value <strong>CommandPreload</strong> to <strong>0&#215;00000000 (0)</strong>.</p>
<p>If you&#8217;re using a x64 machine, edit the following within the registry:<br />
Key: <strong>HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\9.0\AddIns\IconWorkshopAddin.Connect</strong><br />
Set value <strong>CommandPreload</strong> to <strong>0&#215;00000000 (0)</strong>.</p>
<p>References:<a href="http://www.axialis.com/forum/viewtopic.php?f=4&amp;t=2179"></p>
<p>http://www.axialis.com/forum/viewtopic.php?f=4&amp;t=2179</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2009/remove-empty-axialis-toolbar-from-visual-studio/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How to read and write settings in App.config with C#</title>
		<link>http://www.kylirhorton.com/2008/read-and-write-settings-in-appconfig/</link>
		<comments>http://www.kylirhorton.com/2008/read-and-write-settings-in-appconfig/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 21:13:29 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=59</guid>
		<description><![CDATA[Today I&#8217;ve been working on creating a simple WPF application. As a part of this application, I want to store some user-defined preferences. This post briefly details how I went about doing this using C# and Visual Studio 2008.
First, make sure your application has an App.config file. If it is missing, add it by going [...]]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;ve been working on creating a simple WPF application. As a part of this application, I want to store some user-defined preferences. This post briefly details how I went about doing this using C# and Visual Studio 2008.</p>
<p>First, make sure your application has an App.config file. If it is missing, add it by going to Project &gt; Add New Item&#8230; and then selecting &#8220;Application Configuration File&#8221; from the pop up. Visual Studio will then add a blank App.config file to your application. Open it and make it look something like this:</p>
<p><code>&lt;?xml version="1.0" encoding="utf-8" ?&gt;<br />
&lt;configuration&gt;<br />
&lt;appSettings&gt;<br />
&lt;add key="PreferenceToRemember" value="DefaultValue" /&gt;<br />
&lt;/appSettings&gt;<br />
&lt;/configuration&gt;</code></p>
<p>In order to write to this App.config file, you will need to add System.Configuration as a project reference. And of course you&#8217;ll need to have the appropriate <code>usings</code> statements on the right forms. Once all that is done, you can write to the App.config file with the following:</p>
<p><code>Configuration oConfig = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);<br />
oConfig.AppSettings.Settings["PreferenceToRemember"].Value = "NewValue";<br />
oConfig.Save(ConfigurationSaveMode.Modified);<br />
ConfigurationManager.RefreshSection("appSettings");</code></p>
<p>The last line in the code above refreshes the current in-memory configuration with what is saved inside the App.config file. To read from the App.config file, just use this:</p>
<p><code>string strPreferenceToRemember = ConfigurationManager.AppSettings["LastProject"];</code></p>
<p>As a final note, I noticed that nothing seemed to be written to the configuration file while debugging within Visual Studio, but once I published the application it worked as expected. I don&#8217;t know why this happens, but I&#8217;ll modify this post if I find out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2008/read-and-write-settings-in-appconfig/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Montana Road Trip</title>
		<link>http://www.kylirhorton.com/2008/montana-road-trip/</link>
		<comments>http://www.kylirhorton.com/2008/montana-road-trip/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 05:35:41 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Photography]]></category>
		<category><![CDATA[Road Trip]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=17</guid>
		<description><![CDATA[We (Mindy, Bryana, and myself) went on a 5 day road trip to Montana. For the most part we stuck to scenic back roads and took the long and lazy route. Along the way we stopped at the Tetons, Beaverhead National Forest, Flathead Lake, Glacier National Park, and a quick dip into Alberta. We of [...]]]></description>
			<content:encoded><![CDATA[<p>We (Mindy, Bryana, and myself) went on a 5 day road trip to Montana. For the most part we stuck to scenic back roads and took the long and lazy route. Along the way we stopped at the Tetons, Beaverhead National Forest, Flathead Lake, Glacier National Park, and a quick dip into Alberta. We of course didn&#8217;t spend nearly enough time in any one location, so now I&#8217;m itching to go back and explore—especially Glacier National Park.</p>
<p>The trip was to celebrate Bryana&#8217;s graduation, birthday, and to give her a chance to see her old friend Cody. Cody is a mustang that Bryana took care of for three years. I hear he&#8217;s got quite the attitude and a set of bad habits to match, kind of like Rook (our dog).</p>
<p>Aside from the beautiful scenery and the general good times, one interesting event occured. On the trip back home we decided to hit I-15 and get back as fast as we could. While traveling through Montana, I passed an RV going 20 mph over the speed limit—which means I was at 90. And of course, I got pulled over. The police officer recognized that I was passing and so he kindly reduced the ticket to just 10 mph over. He then said, &#8220;Now you can either appear in court on this date&#8230; or you can pay your fine right now. It is $20.&#8221; That flabbergasted me. I dug around the car and eventually Bryana spotted me the cash. I then ponied up and paid my ticket right then and there. Honestly I felt like I was paying off the cop, not the fine. And who knows, maybe he enjoyed a good lunch because of me.</p>
<p>Anyway, the trip was great. I&#8217;ve attached some of the photos that we took along with a map of where we drove. Enjoy!<br />
<br />
<span id="more-17"></span><br />

<a href='http://www.kylirhorton.com/2008/montana-road-trip/tripphoto/' title='Happy Campers Photo'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/tripphoto-150x150.jpg" class="attachment-thumbnail" alt="" title="Happy Campers Photo" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/familyphoto/' title='Family Shot'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/familyphoto-150x150.jpg" class="attachment-thumbnail" alt="" title="Family Shot" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/mindy/' title='Mindini'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/mindy-150x150.jpg" class="attachment-thumbnail" alt="" title="Mindini" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/bryana/' title='Bryana'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/bryana-150x150.jpg" class="attachment-thumbnail" alt="" title="Bryana" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/birthday/' title='Birthday Cake'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/birthday-150x150.jpg" class="attachment-thumbnail" alt="" title="Birthday Cake" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/codyandbryana/' title='Cody and Bryana'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/codyandbryana-150x150.jpg" class="attachment-thumbnail" alt="" title="Cody and Bryana" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/cody/' title='Cody'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/cody-150x150.jpg" class="attachment-thumbnail" alt="" title="Cody" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/happyrook/' title='Rook-a-roo'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/happyrook-150x150.jpg" class="attachment-thumbnail" alt="" title="Rook-a-roo" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/walkabout/' title='Walk About'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/walkabout-150x150.jpg" class="attachment-thumbnail" alt="" title="Walk About" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/proudrook/' title='Proud Dog'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/proudrook-150x150.jpg" class="attachment-thumbnail" alt="" title="Proud Dog" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/watchfulrook/' title='Watchful Rook'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/watchfulrook-150x150.jpg" class="attachment-thumbnail" alt="" title="Watchful Rook" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/scenicidaho1/' title='Scenic Idaho #1'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/scenicidaho1-150x150.jpg" class="attachment-thumbnail" alt="" title="Scenic Idaho #1" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/scenicidaho2/' title='Scenic Idaho #2'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/scenicidaho2-150x150.jpg" class="attachment-thumbnail" alt="" title="Scenic Idaho #2" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/bison/' title='Bison'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/bison-150x150.jpg" class="attachment-thumbnail" alt="" title="Bison" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/hiddenwaterfall/' title='Random Magestic Hidden Waterfall'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/hiddenwaterfall-150x150.jpg" class="attachment-thumbnail" alt="" title="Random Magestic Hidden Waterfall" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/gnp/' title='Glacier National Park'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/gnp-150x150.jpg" class="attachment-thumbnail" alt="" title="Glacier National Park" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/mtoberlin1/' title='Mount Oberlin #1 (Glacier National Park)'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/mtoberlin1-150x150.jpg" class="attachment-thumbnail" alt="" title="Mount Oberlin #1 (Glacier National Park)" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/mtoberlin2/' title='Mount Oberlin #2 (Glacier National Park)'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/mtoberlin2-150x150.jpg" class="attachment-thumbnail" alt="" title="Mount Oberlin #2 (Glacier National Park)" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/saintmary/' title='Saint Mary&#039;s Lake (Glacier National Park)'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/saintmary-150x150.jpg" class="attachment-thumbnail" alt="" title="Saint Mary&#039;s Lake (Glacier National Park)" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/mtjackson/' title='Mount Jackson (Glacier National Park)'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/mtjackson-150x150.jpg" class="attachment-thumbnail" alt="" title="Mount Jackson (Glacier National Park)" /></a>
<a href='http://www.kylirhorton.com/2008/montana-road-trip/leaf/' title='Random Leaf (Glacier National Park)'><img width="150" height="150" src="http://www.kylirhorton.com/wp-content/uploads/2008/07/leaf-150x150.jpg" class="attachment-thumbnail" alt="" title="Random Leaf (Glacier National Park)" /></a>
<br />
<br />
<iframe width="300" height="650" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=11120824325336387578,41.730070,-111.835020%3B15482994520575470361,42.098360,-111.876590%3B7700438832380818973,42.317620,-111.310700%3B7410743665567918383,43.656029,-110.718519%3B11368557667215490693,43.574160,-110.733260%3B13399556155153352659,43.613735,-110.671658%3B15042070332809879113,43.626417,-110.486738%3B1343891184447967224,44.406820,-111.375670%3B12966282945312072566,45.536950,-112.330210%3B8379454427525211385,45.474499,-113.600566%3B9950698632550705116,46.399780,-114.144450%3B11109691256792614191,47.685210,-114.123500%3B15807564645328143155,47.936124,-113.850656%3B10278552365707981895,49.129626,-113.285635%3B14455557116445828591,48.520010,-111.886900&amp;saddr=628+Meadow+Hill+Drive,+Sandy,+UT&amp;daddr=S+Main+St%2FUS-89%2FUS-91+%4041.730070,+-111.835020+to:N+State+St+%4042.098360,+-111.876590+to:Washington+St+%4042.317620,+-111.310700+to:Teton+Park+Rd+%4043.656029,+-110.718519+to:US-189%2FUS-191%2FUS-26%2FUS-89+%4043.574160,+-110.733260+to:Gros+Ventre+Campground+Rd+%4043.613735,+-110.671658+to:Gros+Ventre+Rd+%4043.626417,+-110.486738+to:US-20+%4044.406820,+-111.375670+to:45.540984,-112.343445+to:Foothills+Rd+%4045.474499,+-113.600566+to:Wisdom,+Montana+to:US-93+%4046.399780,+-114.144450+to:Stevensville,+MT+to:US-93+%4047.685210,+-114.123500+to:Unknown+road+%4047.936124,+-113.850656+to:HWY-2+%4049.129626,+-113.285635+to:West+Glacier,+Montana+to:US-2+%4048.520010,+-111.886900+to:628+Meadow+Hill+Dr,+Sandy,+UT+84070&amp;mra=dme&amp;mrcr=2&amp;mrsp=9&amp;sz=9&amp;via=1,2,3,4,5,8,9,12,14,18&amp;doflg=ptm&amp;sll=45.323186,-111.758423&amp;sspn=1.438676,2.400513&amp;ie=UTF8&amp;t=p&amp;s=AARTsJqLYzRaAzSSkReL2S2haQ_SYVJG5A&amp;ll=45.02695,-112.280273&amp;spn=10.094272,6.591797&amp;z=6&amp;output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=d&amp;hl=en&amp;geocode=11120824325336387578,41.730070,-111.835020%3B15482994520575470361,42.098360,-111.876590%3B7700438832380818973,42.317620,-111.310700%3B7410743665567918383,43.656029,-110.718519%3B11368557667215490693,43.574160,-110.733260%3B13399556155153352659,43.613735,-110.671658%3B15042070332809879113,43.626417,-110.486738%3B1343891184447967224,44.406820,-111.375670%3B12966282945312072566,45.536950,-112.330210%3B8379454427525211385,45.474499,-113.600566%3B9950698632550705116,46.399780,-114.144450%3B11109691256792614191,47.685210,-114.123500%3B15807564645328143155,47.936124,-113.850656%3B10278552365707981895,49.129626,-113.285635%3B14455557116445828591,48.520010,-111.886900&amp;saddr=628+Meadow+Hill+Drive,+Sandy,+UT&amp;daddr=S+Main+St%2FUS-89%2FUS-91+%4041.730070,+-111.835020+to:N+State+St+%4042.098360,+-111.876590+to:Washington+St+%4042.317620,+-111.310700+to:Teton+Park+Rd+%4043.656029,+-110.718519+to:US-189%2FUS-191%2FUS-26%2FUS-89+%4043.574160,+-110.733260+to:Gros+Ventre+Campground+Rd+%4043.613735,+-110.671658+to:Gros+Ventre+Rd+%4043.626417,+-110.486738+to:US-20+%4044.406820,+-111.375670+to:45.540984,-112.343445+to:Foothills+Rd+%4045.474499,+-113.600566+to:Wisdom,+Montana+to:US-93+%4046.399780,+-114.144450+to:Stevensville,+MT+to:US-93+%4047.685210,+-114.123500+to:Unknown+road+%4047.936124,+-113.850656+to:HWY-2+%4049.129626,+-113.285635+to:West+Glacier,+Montana+to:US-2+%4048.520010,+-111.886900+to:628+Meadow+Hill+Dr,+Sandy,+UT+84070&amp;mra=dme&amp;mrcr=2&amp;mrsp=9&amp;sz=9&amp;via=1,2,3,4,5,8,9,12,14,18&amp;doflg=ptm&amp;sll=45.323186,-111.758423&amp;sspn=1.438676,2.400513&amp;ie=UTF8&amp;t=p&amp;ll=45.02695,-112.280273&amp;spn=10.094272,6.591797&amp;z=6&amp;source=embed" style="color:#0000FF;text-align:left">View Larger Map</a></small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2008/montana-road-trip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Regular Expression that matches CSS lengths</title>
		<link>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-lengths/</link>
		<comments>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-lengths/#comments</comments>
		<pubDate>Wed, 02 Jul 2008 19:15:05 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Regular Expressions]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=11</guid>
		<description><![CDATA[As a followup to my previous post, here&#8217;s a useful regular expression for selecting a valid CSS length.


[-+]?[0-9]*\.?[0-9]+(px&#124;ex&#124;em&#124;in&#124;cm&#124;mm&#124;pt&#124;pc&#124;%)
]]></description>
			<content:encoded><![CDATA[<p>As a followup to my previous post, here&#8217;s a useful regular expression for selecting a valid CSS length.<br />
<br />
<span id="more-11"></span><br />
<code>[-+]?[0-9]*\.?[0-9]+(px|ex|em|in|cm|mm|pt|pc|%)</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-lengths/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Regular Expression that matches CSS colors</title>
		<link>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-colors/</link>
		<comments>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-colors/#comments</comments>
		<pubDate>Fri, 29 Feb 2008 04:12:11 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Regular Expressions]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=10</guid>
		<description><![CDATA[Recently I needed to have a Regular Expression which would match valid CSS colors. I wasn&#8217;t able to find any after searching the Internets for a while, so I wrote my own.

(#([0-9A-Fa-f]{3,6})\b)&#124;
(aqua)&#124;(black)&#124;(blue)&#124;(fuchsia)&#124;
(gray)&#124;(green)&#124;(lime)&#124;(maroon)&#124;
(navy)&#124;(olive)&#124;(orange)&#124;(purple)&#124;
(red)&#124;(silver)&#124;(teal)&#124;(white)&#124;(yellow)&#124;
(rgb\(\s*\b([0-9]&#124;[1-9][0-9]&#124;1[0-9][0-9]&#124;2[0-4][0-9]&#124;25[0-5])\b\s*,
\s*\b([0-9]&#124;[1-9][0-9]&#124;1[0-9][0-9]&#124;2[0-4][0-9]&#124;25[0-5])\b\s*,
\s*\b([0-9]&#124;[1-9][0-9]&#124;1[0-9][0-9]&#124;2[0-4][0-9]&#124;25[0-5])\b\s*\))&#124;
(rgb\(\s*(\d?\d%&#124;100%)+\s*,\s*(\d?\d%&#124;100%)+\s*,\s*(\d?\d%&#124;100%)+\s*\))
Just as a recap, a valid CSS color can be represented as a&#8230;

named color, such as &#8220;red&#8221;, &#8220;green&#8221;, &#8220;blue&#8221;, &#8220;black&#8221;, etc.
hexadecimal value, such as [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I needed to have a Regular Expression which would match valid CSS colors. I wasn&#8217;t able to find any after searching the Internets for a while, so I wrote my own.</p>
<p><span id="more-10"></span></p>
<p><code>(#([0-9A-Fa-f]{3,6})\b)|</code></p>
<p><code>(aqua)|(black)|(blue)|(fuchsia)|</code></p>
<p><code>(gray)|(green)|(lime)|(maroon)|</code></p>
<p><code>(navy)|(olive)|(orange)|(purple)|</code></p>
<p><code>(red)|(silver)|(teal)|(white)|(yellow)|</code></p>
<p><code>(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,</code></p>
<p><code>\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,</code></p>
<p><code>\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|</code></p>
<p><code>(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\))</code></p>
<p>Just as a recap, a valid CSS color can be represented as a&#8230;</p>
<ol>
<li>named color, such as &#8220;red&#8221;, &#8220;green&#8221;, &#8220;blue&#8221;, &#8220;black&#8221;, etc.</li>
<li>hexadecimal value, such as #ff0000 (red), #00ff00 (green), #0000ff (blue), #000000 (black), etc. Some hexadecimal values can be reduced to just three characters. For example, red is #f00 and green is #0f0.</li>
<li>triplet consisting of the color&#8217;s RGB values, such as rgb(255,0,0) for red and rgb(0,255,0) for green.</li>
</ol>
<p>The Regular Expression listed above should be able to handle any of the variants that a CSS color can throw at it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2008/a-regular-expression-that-matches-css-colors/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to loop through an associative array in JavaScript</title>
		<link>http://www.kylirhorton.com/2008/how-to-loop-through-an-associative-array-in-javascript/</link>
		<comments>http://www.kylirhorton.com/2008/how-to-loop-through-an-associative-array-in-javascript/#comments</comments>
		<pubDate>Fri, 11 Jan 2008 00:04:25 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=9</guid>
		<description><![CDATA[Looping through an associative array in JavaScript is straight forward, but it does have some catches. You will want to use a for (...in...) loop. This will iterate through every index in the array and even the properties of the array. In order to loop through only the elements within the array, you&#8217;ll want to [...]]]></description>
			<content:encoded><![CDATA[<p>Looping through an associative array in JavaScript is straight forward, but it does have some catches. You will want to use a <code>for (...in...)</code> loop. This will iterate through every index in the array and even the properties of the array. In order to loop through <strong>only</strong> the elements within the array, you&#8217;ll want to do something similar to this:</p>
<p><code>for (var name in associativeArray) {<br />
if (name != "length") {<br />
// Code that interacts with associativeArray[name]<br />
// name will contain the index for each property<br />
}<br />
}</code></p>
<p>The above code snippet can also be useful for iterating through the properties within an object. Firefox supports iterating through an array using the <code>each</code> keyword like so:</p>
<p><code>for each (var object in associativeArray) {<br />
// object now contains the actual item and can be directly used.<br />
}</code></p>
<p>In this case, you do not need to worry about picking up the <code>length</code> property.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2008/how-to-loop-through-an-associative-array-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mindy&#8217;s Stir Fry</title>
		<link>http://www.kylirhorton.com/2007/mindys-stir-fry/</link>
		<comments>http://www.kylirhorton.com/2007/mindys-stir-fry/#comments</comments>
		<pubDate>Wed, 19 Dec 2007 06:19:53 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Recipes]]></category>
		<category><![CDATA[Entree]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=8</guid>
		<description><![CDATA[
My wife started to make this delicious dish a while ago. It is really good, very simple, and quick to make. This recipe will feed about three people, goes well with rice or noodles, and takes about 30 minutes from start to finish.
Ingredients

Stir Fry Veggies &#8211; Get enough to fill a wok 3/4 full
1 tbsp. [...]]]></description>
			<content:encoded><![CDATA[<p><img title="Stir Fry" src="http://www.kylirhorton.com/images/stirFry.jpg" alt="Stir Fry" width="425" height="100" /><br />
My wife started to make this delicious dish a while ago. It is really good, very simple, and quick to make. This recipe will feed about three people, goes well with rice or noodles, and takes about 30 minutes from start to finish.</p>
<p><strong>Ingredients</strong></p>
<ul>
<li>Stir Fry Veggies &#8211; Get enough to fill a wok 3/4 full</li>
<li>1 tbsp. Cornstarch</li>
<li>1/4 Cup Soy Sauce</li>
<li>2 tbsp. Vinegar</li>
<li>3  tbsp. Brown Sugar</li>
<li>1 tsp. Garlic Powder</li>
<li>Pineapple Chunks &#8211; Keep some of the juice (Optional)</li>
<li>Worcestershire Sauce (Optional)</li>
</ul>
<p><strong>Directions</strong><br />
Begin by cooking the veggies. Depending on how crisp you want them will determine how long to cook them for. Next stir together the cornstarch and soy sauce in a separate cup and then add it to the wok. Add the vinegar, brown sugar, and garlic powder directly to the wok and stir together. If you would like a sweeter or richer flavor, add some pineapple chunks with some juice or Worcestershire sauce. Bring to a boil and serve!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2007/mindys-stir-fry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET Application, Page, and Control Life Cycles</title>
		<link>http://www.kylirhorton.com/2007/aspnet-life-cycle/</link>
		<comments>http://www.kylirhorton.com/2007/aspnet-life-cycle/#comments</comments>
		<pubDate>Fri, 14 Dec 2007 21:25:33 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Custom Controls]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=7</guid>
		<description><![CDATA[
About every other week I will need to know something about the life cycle of an ASP.NET page and for some reason it takes me a while to find it on the Internets. Below I&#8217;ve added an ordered list of the events which fire during the life cycle of an ASP.NET Application, Page, and Control. [...]]]></description>
			<content:encoded><![CDATA[<p><img title="ASP.NET" src="http://www.kylirhorton.com/images/aspnetLogo.jpg" alt="ASP.NET" width="425" height="100" /><br />
About every other week I will need to know something about the life cycle of an ASP.NET page and for some reason it takes me a while to find it on the Internets. Below I&#8217;ve added an ordered list of the events which fire during the life cycle of an ASP.NET Application, Page, and Control. And then as a bonus I&#8217;ve included an image which shows most of it courtesy of Leon Andrianarivony. Enjoy!</p>
<p><span id="more-7"></span><strong>Application, Page, and Control Life Cycles</strong><br />
Application: BeginRequest<br />
Application: PreAuthenticateRequest<br />
Application: AuthenticateRequest<br />
Application: PostAuthenticateRequest<br />
Application: PreAuthorizeRequest<br />
Application: AuthorizeRequest<br />
Application: PostAuthorizeRequest<br />
Application: PreResolveRequestCache<br />
Application: ResolveRequestCache<br />
Application: PostResolveRequestCache<br />
Application: PreMapRequestHandler<br />
Page: Construct<br />
Application: PostMapRequestHandler<br />
Application: PreAcquireRequestState<br />
Application: AcquireRequestState<br />
Application: PostAcquireRequestState<br />
Application: PreRequestHandlerExecute<br />
Page: AddParsedSubObject<br />
Page: CreateControlCollection<br />
Page: AddedControl<br />
Page: AddParsedSubObject<br />
Page: AddedControl<br />
Page: ResolveAdapter<br />
Page: DeterminePostBackMode<br />
Page: PreInit<br />
Control: ResolveAdapter<br />
Control: Init<br />
Control: TrackViewState<br />
Page: Init<br />
Page: TrackViewState<br />
Page: InitComplete<br />
Page: LoadPageStateFromPersistenceMedium<br />
Control: LoadViewState<br />
Page: EnsureChildControls<br />
Page: CreateChildControls<br />
Page: PreLoad<br />
Page: Load<br />
Control: DataBind<br />
Control: Load<br />
Page: EnsureChildControls<br />
Page: LoadComplete<br />
Page: EnsureChildControls<br />
Page: PreRender<br />
Control: EnsureChildControls<br />
Control: PreRender<br />
Page: PreRenderComplete<br />
Page: SaveViewState<br />
Control: SaveViewState<br />
Page: SaveViewState<br />
Control: SaveViewState<br />
Page: SavePageStateToPersistenceMedium<br />
Page: SaveStateComplete<br />
Page: CreateHtmlTextWriter<br />
Page: RenderControl<br />
Page: Render<br />
Page: RenderChildren<br />
Control: RenderControl<br />
Page: VerifyRenderingInServerForm<br />
Page: CreateHtmlTextWriter<br />
Control: Unload<br />
Control: Dispose<br />
Page: Unload<br />
Page: Dispose<br />
Application: PostRequestHandlerExecute<br />
Application: PreReleaseRequestState<br />
Application: ReleaseRequestState<br />
Application: PostReleaseRequestState<br />
Application: PreUpdateRequestCache<br />
Application: UpdateRequestCache<br />
Application: PostUpdateRequestCache<br />
Application: EndRequest<br />
Application: PreSendRequestHeaders<br />
Application: PreSendRequestContent</p>
<p><strong>Page and Control Life Cycles with Pretty Pictures!</strong><br />
<a href="http://www.kylirhorton.com/images/aspnetLifeCycle.jpg"><img title="ASP.NET Page and Control Life Cycles" src="http://www.kylirhorton.com/images/aspnetLifeCycle.jpg" alt="ASP.NET Page and Control Life Cycles" width="877" height="1200" /></a></p>
<p>References:<br />
<a href="http://weblogs.asp.net/Jeff/archive/2004/07/04/172683.aspx">http://weblogs.asp.net/Jeff/archive/2004/07/04/172683.aspx<br />
</a><a href="http://www.eggheadcafe.com/articles/20051227.asp">http://www.eggheadcafe.com/articles/20051227.asp</a><a href="http://weblogs.asp.net/Jeff/archive/2004/07/04/172683.aspx"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2007/aspnet-life-cycle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to hide a user account from the welcome screen in Vista</title>
		<link>http://www.kylirhorton.com/2007/hide-a-user-account-from-the-welcome-screen/</link>
		<comments>http://www.kylirhorton.com/2007/hide-a-user-account-from-the-welcome-screen/#comments</comments>
		<pubDate>Tue, 11 Dec 2007 21:11:28 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Registry]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=5</guid>
		<description><![CDATA[
There is a special list in the registry which you can use to prevent user accounts from appearing on Vista&#8217;s welcome screen. To add a user account to this list, open the registry editor (regedit.exe) and navigate to:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList]
If SpecialAccounts or UserList does not exist, create it. Create a DWORD registry value for the name [...]]]></description>
			<content:encoded><![CDATA[<p><img title="Vista Login" src="http://www.kylirhorton.com/images/vistaLogin.jpg" alt="Vista Login" width="425" height="100" /></p>
<p>There is a special list in the registry which you can use to prevent user accounts from appearing on Vista&#8217;s welcome screen. To add a user account to this list, open the registry editor (regedit.exe) and navigate to:</p>
<p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList]</p>
<p>If SpecialAccounts or UserList does not exist, create it. Create a DWORD registry value for the name of the user that you want to hide and name it the same as the user. Make sure it is set to 0, which will flag the user as being hidden on the welcome screen. If you set it to 1, then it will be visible.</p>
<p>And that&#8217;s it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2007/hide-a-user-account-from-the-welcome-screen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to fix broken project references in Visual Studio</title>
		<link>http://www.kylirhorton.com/2007/fix-broken-project-references-in-visual-studio/</link>
		<comments>http://www.kylirhorton.com/2007/fix-broken-project-references-in-visual-studio/#comments</comments>
		<pubDate>Thu, 06 Dec 2007 17:35:21 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.kylirhorton.com/?p=4</guid>
		<description><![CDATA[
The Problem
Lately I&#8217;ve been experiencing some frustrating problems with references to DLL files in a Visual Studio solution. Since I&#8217;m working with a team of other programmers, we are obviously using a code versioning system—in this case SourceSafe. It seems that nearly every time I &#8220;get the latest version&#8221; of the solution from SourceSafe and [...]]]></description>
			<content:encoded><![CDATA[<p><img title="Visual Studio" src="http://www.kylirhorton.com/images/visualStudio.jpg" alt="Visual Studio" width="425" height="100" /></p>
<p><strong>The Problem</strong><br />
Lately I&#8217;ve been experiencing some frustrating problems with references to DLL files in a Visual Studio solution. Since I&#8217;m working with a team of other programmers, we are obviously using a code versioning system—in this case SourceSafe. It seems that nearly every time I &#8220;get the latest version&#8221; of the solution from SourceSafe and then try to build it, I will get errors with references to missing DLLs. However, the &#8220;missing DLLs&#8221; actually exist. The problem is that the references to these DLLs within the solution are wrong.</p>
<p>Because each of the other programmers have a different path to their own copies of the same solution, they also have different paths to the DLLs that are included in that solution. One programmer will notice that his stuff isn&#8217;t compiling, he&#8217;ll fix the reference error, check it in, and then simultaneously break it on all the other programmers&#8217; machines (Or at least all those will a different file structure).</p>
<p><strong>The Fix</strong><br />
To fix it, you&#8217;ll want to use &#8220;Reference Paths&#8221; within Visual Studio:</p>
<ol>
<li>In Solution Explorer, right-click your project node and click Properties. The Project Designer should appear.</li>
<li>If you are using Visual Basic, select the References page and click the Reference Paths button. In the Reference Paths dialog box, type the path of the folder that contains the DLL that you want to reference in the Folder field, then click the Add Folder button. If you are using C#, select the Reference Paths page. In the Folder field, type the path of the folder that contains the item you want to reference, and then click the Add Folder button.</li>
</ol>
<p>That&#8217;s it! Reference Paths are saved within each user&#8217;s own profile, so they will not be propogated to the other SourceSafe users when you check in your files. When you build a solution, Visual Studio will first try to find the DLL with the hardcoded path that is provided within the solution. If it can&#8217;t find it, then it will look within the Reference Paths for the file, where you should now have the correct reference to the DLLs.</p>
<p>References:<a href="http://msdn2.microsoft.com/en-us/library/ayds71se(VS.80).aspx"></p>
<p>http://msdn2.microsoft.com/en-us/library/ayds71se(VS.80).aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2007/fix-broken-project-references-in-visual-studio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Orange Dijon Chicken Cordon Bleu</title>
		<link>http://www.kylirhorton.com/2007/orange-dijon-chicken-cordon-bleu/</link>
		<comments>http://www.kylirhorton.com/2007/orange-dijon-chicken-cordon-bleu/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 17:00:08 +0000</pubDate>
		<dc:creator>Kylir</dc:creator>
				<category><![CDATA[Recipes]]></category>
		<category><![CDATA[Entree]]></category>

		<guid isPermaLink="false">http://kylirhorton.com/wordpress/?p=3</guid>
		<description><![CDATA[This classic recipe for a main dish is easy, uses common ingredients, and takes about 30 minutes to make. It serves 4 people and goes well with rice or noodles.
Ingredients

 4 Chicken Breasts
 Thinly Sliced Ham
 Mozzarella Cheese
 Olive Oil
 1 or 2 Cans of Cream of Chicken
 1 Cup of Orange Juice or some [...]]]></description>
			<content:encoded><![CDATA[<p>This classic recipe for a main dish is easy, uses common ingredients, and takes about 30 minutes to make. It serves 4 people and goes well with rice or noodles.</p>
<p><strong>Ingredients</strong></p>
<ul>
<li> 4 Chicken Breasts</li>
<li> Thinly Sliced Ham</li>
<li> Mozzarella Cheese</li>
<li> Olive Oil</li>
<li> 1 or 2 Cans of Cream of Chicken</li>
<li> 1 Cup of Orange Juice or some Lemon Juice</li>
<li> Sage</li>
<li> Mandarin Oranges</li>
</ul>
<p><strong>Directions</strong><br />
It is best to work with semi-thawed chicken breasts. Cut a large pocket into each chicken breast. Fill with a slice or two of ham and a few slices of mozzarella cheese. Pour oil into a large cooking pan or wok. Brown the stuffed chicken. Then add a can of Cream of Chicken soup. Add a second if you like extra sauce. Next add the cup of orange juice. If you don’t have any, lemon juice makes a good substitute. If you’re using lemon juice, don’t put nearly as much in. Add in a liberal amount of sage. Bring this to a boil. Once it is boiling and thoroughly cooked, add the mandarin oranges and serve.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylirhorton.com/2007/orange-dijon-chicken-cordon-bleu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
