<?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>The Blog of Zachary Snow &#187; C#</title>
	<atom:link href="http://zacharysnow.net/category/net/csharp/feed/" rel="self" type="application/rss+xml" />
	<link>http://zacharysnow.net</link>
	<description></description>
	<lastBuildDate>Tue, 20 Dec 2011 19:41:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>WinQuakeCon</title>
		<link>http://zacharysnow.net/2011/12/20/winquakecon/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=winquakecon</link>
		<comments>http://zacharysnow.net/2011/12/20/winquakecon/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 19:34:10 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[WinQuakeCon]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[command-shell]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[quake]]></category>
		<category><![CDATA[terminal]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[winquakecon]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=471</guid>
		<description><![CDATA[I&#8217;ve always wanted a program that would allow me have a command line that I could slide in and out of view as needed like the console from Quake. I never could find one and so I finally got decided &#8230; <a href="http://zacharysnow.net/2011/12/20/winquakecon/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always wanted a program that would allow me have a command line that I could slide in and out of view as needed like the console from <a href="http://en.wikipedia.org/wiki/Quake_(video_game)">Quake</a>. I never could find one and so I finally got decided to write a tool myself. A picture is below and the source code is on <a href="https://github.com/smack0007/WinQuakeCon">GitHub</a>.</p>
<p>I&#8217;m not putting a download here as I don&#8217;t consider this finished just yet.</p>
<p><a href="http://zacharysnow.net/wp-content/uploads/2011/12/WinQuakeCon.png"><img src="http://zacharysnow.net/wp-content/uploads/2011/12/WinQuakeCon-300x160.png" alt="" title="WinQuakeCon" width="300" height="160" class="alignnone size-medium wp-image-475" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/12/20/winquakecon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is Snowball and what do I want to do with it?</title>
		<link>http://zacharysnow.net/2011/10/16/what-is-snowball-and-what-do-i-want-to-do-with-it/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=what-is-snowball-and-what-do-i-want-to-do-with-it</link>
		<comments>http://zacharysnow.net/2011/10/16/what-is-snowball-and-what-do-i-want-to-do-with-it/#comments</comments>
		<pubDate>Sun, 16 Oct 2011 18:30:47 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[SlimDX]]></category>
		<category><![CDATA[Snowball]]></category>
		<category><![CDATA[2D]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[codeplex]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[slimdx]]></category>
		<category><![CDATA[snowball]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=462</guid>
		<description><![CDATA[I originally got the idea for Snowball after working with the Xna Framework. The Xna Framework is a good piece of software for what it is but there are some things about which I just do not agree with: The &#8230; <a href="http://zacharysnow.net/2011/10/16/what-is-snowball-and-what-do-i-want-to-do-with-it/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I originally got the idea for Snowball after working with the Xna Framework. The Xna Framework is a good piece of software for what it is but there are some things about which I just do not agree with:</p>
<ul>
<li>The content pipeline only works with content in the serialized .xnb format.</li>
<li>There are certain content types which can only be loaded via the content pipeline.</li>
<li>Certain features don&#8217;t exist on the PC because they don&#8217;t exist on the XBox or Windows Phone 7.</li>
</ul>
<p>Xna was designed as an abstraction layer for all the 3 platforms mentioned in the last point, so that one is somewhat understandable. I don&#8217;t want to write games for my XBox right now though, so why should things like drawing lines not be available to me?</p>
<p>With these points in mind I started working on <a href="http://snowball.codeplex.com/">Snowball</a>. It&#8217;s designed to be an Xna like framework for making 2D games. It uses SlimDX on the backend, but that is completely abstracted away from consumers of the framework. What I want to do is design the API so that the backend can be swapped out <strong>somewhat</strong> painlessly.</p>
<p>I still have a ways to go before I will consider it a version 1.0 release. As of this writing, I&#8217;m transitioning to more of a ContentLoader class style for loading your game&#8217;s content. Any resource type from within the framework can be loaded by hand if you want, the ContentLoader class will just make it easier. After that I have a few other features like GamePad and Music which I would like to implement before saying I have a Beta type release.</p>
<p>The future after that is up in the air. I would love to try and have different implementations of the API for Xna and/or OpenTK.</p>
<p>I recommend for anyone who is interested as to why an API designer choose to implement the API in the way they did to try it for themselves. I have learned many things from this project including why certain design decisions were made by the Xna Framework team. </p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/10/16/what-is-snowball-and-what-do-i-want-to-do-with-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WMI: Converting datetime values to DateTime objects</title>
		<link>http://zacharysnow.net/2011/07/12/wmi-converting-datetime-values-to-datetime-objects/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wmi-converting-datetime-values-to-datetime-objects</link>
		<comments>http://zacharysnow.net/2011/07/12/wmi-converting-datetime-values-to-datetime-objects/#comments</comments>
		<pubDate>Tue, 12 Jul 2011 17:35:55 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[wmi]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=433</guid>
		<description><![CDATA[Just a quick post to hopefully save anyone who finds this some time. If you need to convert a datetime value from a WMI query to a native DateTime object in C#, you can use the method ToDateTime() on the &#8230; <a href="http://zacharysnow.net/2011/07/12/wmi-converting-datetime-values-to-datetime-objects/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Just a quick post to hopefully save anyone who finds this some time. If you need to convert a datetime value from a WMI query to a native DateTime object in C#, you can use the method ToDateTime() on the ManagementDateTimeConverter class.</p>
<pre name="code" class="c#">
ManagementDateTimeConverter.ToDateTime(dmtfDate);
</pre>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/07/12/wmi-converting-datetime-values-to-datetime-objects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XAudio2: Stop Currently Playing Sound</title>
		<link>http://zacharysnow.net/2011/07/02/xaudio2-stop-currently-playing-sound/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=xaudio2-stop-currently-playing-sound</link>
		<comments>http://zacharysnow.net/2011/07/02/xaudio2-stop-currently-playing-sound/#comments</comments>
		<pubDate>Sat, 02 Jul 2011 19:22:40 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[SlimDX]]></category>
		<category><![CDATA[slimdx]]></category>
		<category><![CDATA[xaudio2]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=430</guid>
		<description><![CDATA[Using SlimDX, if you want to stop a sound which is currently playing via XAudio2, use the following methods on the SourceVoice object: sourceVoice.Stop(); sourceVoice.FlushSourceBuffers();]]></description>
			<content:encoded><![CDATA[<p>Using SlimDX, if you want to stop a sound which is currently playing via XAudio2, use the following methods on the SourceVoice object:</p>
<pre name="code" class="c#">
sourceVoice.Stop();
sourceVoice.FlushSourceBuffers();
</pre>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/07/02/xaudio2-stop-currently-playing-sound/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zune Playlist / SMIL Copier</title>
		<link>http://zacharysnow.net/2011/06/27/zune-playlist-smil-copier/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zune-playlist-smil-copier</link>
		<comments>http://zacharysnow.net/2011/06/27/zune-playlist-smil-copier/#comments</comments>
		<pubDate>Mon, 27 Jun 2011 19:40:50 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[playlist]]></category>
		<category><![CDATA[smil]]></category>
		<category><![CDATA[windows-media-player]]></category>
		<category><![CDATA[zune]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=411</guid>
		<description><![CDATA[I needed a tool that would copy the contents of a Zune playlist to a given directory. I did a bit of googling and I couldn&#8217;t find anything, so like any good nerd I wrote a tool that did. The &#8230; <a href="http://zacharysnow.net/2011/06/27/zune-playlist-smil-copier/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I needed a tool that would copy the contents of a Zune playlist to a given directory. I did a bit of googling and I couldn&#8217;t find anything, so like any good nerd I wrote a tool that did.</p>
<p><a href="http://zacharysnow.net/images/SMILCopier.png"><img alt="SMILCopier" src="/images/SMILCopier.png" title="SMILCopier" class="alignnone" width="411" height="167" /></a></p>
<p>The format of Zune playlists is a simple XML format known as <a href="http://www.w3.org/AudioVideo/">SMIL</a>. I think Windows Media Player also stores playlists in this format but I haven&#8217;t confirmed that yet.</p>
<p>I wrote the tool very quickly and have only tested it on my machine with my test data, but I&#8217;ll provide the source if you&#8217;d like to modify for yourself. The source is C#.</p>
<p><a href="http://zacharysnow.net/files/SMILCopier.zip">Download Executable</a><br />
<a href="http://zacharysnow.net/files/SMILCopier-src.zip">Download Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/06/27/zune-playlist-smil-copier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ComponentGlue on GitHub</title>
		<link>http://zacharysnow.net/2011/05/10/componentglue-on-github/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=componentglue-on-github</link>
		<comments>http://zacharysnow.net/2011/05/10/componentglue-on-github/#comments</comments>
		<pubDate>Tue, 10 May 2011 16:56:34 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Dependency Injection]]></category>
		<category><![CDATA[IoC]]></category>
		<category><![CDATA[ComponentGlue]]></category>
		<category><![CDATA[dependency-injection]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=395</guid>
		<description><![CDATA[I moved the ComponentGlue repository to GitHub. I updated the example slightly and cleaned up some of the source code a little. Need to build a full blown app with it eventually.]]></description>
			<content:encoded><![CDATA[<p>I moved the <a href="https://github.com/smack0007/ComponentGlue">ComponentGlue</a> repository to GitHub. I updated the example slightly and cleaned up some of the source code a little. Need to build a full blown app with it eventually.</p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/05/10/componentglue-on-github/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Snowball and GitHub</title>
		<link>http://zacharysnow.net/2011/04/12/snowball-and-github/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=snowball-and-github</link>
		<comments>http://zacharysnow.net/2011/04/12/snowball-and-github/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 19:32:00 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[snowball]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=386</guid>
		<description><![CDATA[I started writing a 2D Game Engine on GitHub. I call it Snowball because I&#8217;m original like that.]]></description>
			<content:encoded><![CDATA[<p>I started writing a 2D Game Engine on <a href="https://github.com/">GitHub</a>. I call it <a href="https://github.com/smack0007/Snowball">Snowball</a> because I&#8217;m original like that.</p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2011/04/12/snowball-and-github/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Component Glue</title>
		<link>http://zacharysnow.net/2010/11/02/component-glue/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=component-glue</link>
		<comments>http://zacharysnow.net/2010/11/02/component-glue/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 19:00:00 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[IoC]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[codeplex]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=353</guid>
		<description><![CDATA[The other day I started an open source project for an IoC Container I call Component Glue. It&#8217;s in a toy / learning tool status right now and I don&#8217;t know how far I actually want to take the project. &#8230; <a href="http://zacharysnow.net/2010/11/02/component-glue/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The other day I started an open source project for an <a href="http://www.martinfowler.com/articles/injection.html">IoC Container</a> I call <a href="http://componentglue.codeplex.com/">Component Glue</a>. It&#8217;s in a toy / learning tool status right now and I don&#8217;t know how far I actually want to take the project. More to come though.</p>
<p><a href="http://componentglue.codeplex.com/">Component Glue on Codeplex</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2010/11/02/component-glue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xna: Load Texture2D from Embedded Resource</title>
		<link>http://zacharysnow.net/2010/07/03/xna-load-texture2d-from-embedded-resource/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=xna-load-texture2d-from-embedded-resource</link>
		<comments>http://zacharysnow.net/2010/07/03/xna-load-texture2d-from-embedded-resource/#comments</comments>
		<pubDate>Sat, 03 Jul 2010 10:46:07 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=338</guid>
		<description><![CDATA[If you&#8217;re writing an app which uses Xna, you may need to load a texture from an embedded resource. Here&#8217;s how: First embed the resource in your app. Do so by choosing Embedded Resource as the Build Action in the &#8230; <a href="http://zacharysnow.net/2010/07/03/xna-load-texture2d-from-embedded-resource/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re writing an app which uses Xna, you may need to load a texture from an embedded resource. Here&#8217;s how:</p>
<p>First embed the resource in your app. Do so by choosing <strong>Embedded Resource</strong> as the <strong>Build Action</strong> in the properties of the resource.</p>
<p><a href="http://zacharysnow.net/wp-content/uploads/2010/07/embed-resource.png"><img src="http://zacharysnow.net/wp-content/uploads/2010/07/embed-resource.png" alt="Properties Dialog for a File" title="embed-resource" width="281" height="175" class="alignnone size-full wp-image-339" /></a></p>
<p>After that you can load the <strong>Texture2D</strong> using a stream handle to the embedded file.</p>
<pre name="code" class="c#">
Stream stream = Assembly.GetCallingAssembly().GetManifestResourceStream("AppNamespace.Folder.font.bmp");
return Texture2D.FromFile(graphicsDevice, stream);
</pre>
<p><strong>GetCallingAssembly()</strong> can be exchanged with <strong>GetExecutingAssembly()</strong> if needed. The name of the resource must be fully qualified with the app&#8217;s namespace and folders. I usually keep my resources in a folder <strong>Resources</strong> so I would have: AppNamespace.Resources.font.bmp.</p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2010/07/03/xna-load-texture2d-from-embedded-resource/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Same Game Xna 2.0 Alpha</title>
		<link>http://zacharysnow.net/2010/06/29/same-game-xna-2-0-alpha/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=same-game-xna-2-0-alpha</link>
		<comments>http://zacharysnow.net/2010/06/29/same-game-xna-2-0-alpha/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 16:31:29 +0000</pubDate>
		<dc:creator>Zachary</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://zacharysnow.net/?p=334</guid>
		<description><![CDATA[I&#8217;ve released what I&#8217;m calling the 2.0 alpha version of Same Game Xna. Codeplex Project Link Release Link]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve released what I&#8217;m calling the 2.0 alpha version of Same Game Xna.</p>
<p><a href="http://zacharysnow.net/wp-content/uploads/2010/06/SameGameXna-2.0-alpha.png"><img src="http://zacharysnow.net/wp-content/uploads/2010/06/SameGameXna-2.0-alpha-150x150.png" alt="" title="SameGameXna-2.0-alpha" width="150" height="150" class="alignnone size-thumbnail wp-image-335" /></a></p>
<p><a href="http://samegamexna.codeplex.com/">Codeplex Project Link</a><br />
<a href="http://samegamexna.codeplex.com/releases/view/47975">Release Link</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zacharysnow.net/2010/06/29/same-game-xna-2-0-alpha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

