<?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>James Wynn</title>
	<atom:link href="http://jameswynn.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://jameswynn.com</link>
	<description>Technology, Programming, Games, Rants</description>
	<lastBuildDate>Thu, 15 Dec 2011 19:57:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>RESTful services in Visual Studio 2010 with WCF</title>
		<link>http://jameswynn.com/2011/12/restful-services-in-visual-studio-2010-with-wcf/</link>
		<comments>http://jameswynn.com/2011/12/restful-services-in-visual-studio-2010-with-wcf/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 19:57:41 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=241</guid>
		<description><![CDATA[Until recently I've only really created web services in PHP, which works perfectly fine for my needs. Some recent projects on the other hand require a little more "interprisy" level system. There is already existing code in C#, so I decided to dig into this new WCF stuff that all the cool kids have been [...]]]></description>
			<content:encoded><![CDATA[<p>Until recently I've only really created web services in PHP, which works perfectly fine for my needs. Some recent projects on the other hand require a little more "interprisy" level system. There is already existing code in C#, so I decided to dig into this new WCF stuff that all the cool kids have been talking about.</p>
<p>WCF looks pretty nice if you can find some documentation to get it all working correctly. I've built some RESTful interfaces before, so I know what goes into designing and implementing them, but figuring out the head and tail of .NET web services was beastly to start on. Perhaps a RESTful interface in WCF wasn't the best project to start on with .NET. Oh well.</p>
<p>So I started with Microsoft's documentation, which was pretty good in general, but spotty on the details:</p>
<p><a href="http://msdn.microsoft.com/en-us/library/dd203052.aspx">http://msdn.microsoft.com/en-us/library/dd203052.aspx</a></p>
<p>I guess I needed something a little more hand-holdy to start with, so after extensive searching of the intarwebs I came across:</p>
<p><a href="http://christopherdeweese.com/blog2/post/drop-the-soap-wcf-rest-and-pretty-uris-in-net-4">http://christopherdeweese.com/blog2/post/drop-the-soap-wcf-rest-and-pretty-uris-in-net-4</a></p>
<p>Thats all I wanted. Give me a working sample to play with! Ok, if I can build from this, you can build from this.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2011/12/restful-services-in-visual-studio-2010-with-wcf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Import VSS to Subversion</title>
		<link>http://jameswynn.com/2011/10/import-vss-to-subversion/</link>
		<comments>http://jameswynn.com/2011/10/import-vss-to-subversion/#comments</comments>
		<pubDate>Tue, 18 Oct 2011 20:03:35 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=235</guid>
		<description><![CDATA[Recently I've been dealing with a codebase sitting in a Visual Source Safe 6.0 repository and to keep it brief and polite we'll say it hasn't been anything approaching "fun."  For anyone interested, I found a handy and effective way to convert an entire VSS repository to SVN. First go grab the newest version of [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I've been dealing with a codebase sitting in a Visual Source Safe 6.0 repository and to keep it brief and polite we'll say it hasn't been anything approaching "fun."  For anyone interested, I found a handy and effective way to convert an entire VSS repository to SVN.</p>
<p>First go grab the newest version of <a title="VssMigrate at CodePlex" href="http://vssmigrate.codeplex.com/" target="_blank">VssMigrate </a>from Codeplex. I don't know why the author prefered to keep the newest version on Codeplex as opposed to Google Code, but I'll leave opinions for another time. VssMigrate does a pretty great job of converting repositories once you get it properly configured. The only issues I had are as follows.</p>
<p>If you get an issue about the SourceSafeTypeLib not being found (usually error 80040154), that means you need to register VSS's ssapi.dll. This should do the trick:</p>
<blockquote><p>regsvr32 C:\Program Files (x86)\Microsoft Visual SourceSafe\ssapi.dll</p></blockquote>
<p>If you still get an issue, then you are probably running 64bit Windows. Just change the target platform of the project from "Any CPU" to "x86".</p>
<p>The only other significant issue I had was in importing the entire repository at once. I didn't want to bother with importing a single project or just a couple of projects. I wanted to move the whole thing. To do this you just need to remove some of the error checking. As of version 0.2.0.0 you just need to comment out the lines around Program.cs:623-627 and Program.cs:673-681. Specifically these are the lines that verify that you filled in VSSPROJ and SVNPROJ. Then set VSSPROJ to "$/" and you should be set.</p>
<p>Also be sure to change "PerformImport" to "True" and to use a local subversion repo, and set the SVNREVPROPSPATH so  VssMigrate can alter the timestamps and authors.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2011/10/import-vss-to-subversion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Junkster Wing, more than a Space FPS</title>
		<link>http://jameswynn.com/2011/03/junkster-wing-more-than-a-space-fps/</link>
		<comments>http://jameswynn.com/2011/03/junkster-wing-more-than-a-space-fps/#comments</comments>
		<pubDate>Sun, 06 Mar 2011 15:50:17 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Spark Engine]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=230</guid>
		<description><![CDATA[I've been working hard on a game project for several months now and after much insight gained during GDC 2011 I've decided its time to get it out there. Junkster Wing is a Space FPS with some interesting RTS elements. Its still in its early stages, but is quite playable already! I will be posting [...]]]></description>
			<content:encoded><![CDATA[<p>I've been working hard on a game project for several months now and after much insight gained during GDC 2011 I've decided its time to get it out there. Junkster Wing is a Space FPS with some interesting RTS elements. Its still in its early stages, but is quite playable already! I will be posting development screen shots, videos, and alpha builds on its official website <a title="Junkster Wing" href="http://junksterwing.com">http://junksterwing.com</a></p>
<p>Anyone that has been following the development will know that Junkster Wing used to be called Supernova Outlaws, but over the last few months the direction has been changing and pushing in a more unique direction. The old moniker just didn't really carry the descriptive vibe the game deserved. I think the new name gives a good feeling of what the game will ultimately be about.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2011/03/junkster-wing-more-than-a-space-fps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Three Big Lies about Programming</title>
		<link>http://jameswynn.com/2010/06/three-big-lies-about-programming/</link>
		<comments>http://jameswynn.com/2010/06/three-big-lies-about-programming/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 19:54:26 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=218</guid>
		<description><![CDATA[I recently found two fantastic presentations the guys from Insomniac put together about misguided/inefficient approaches to programming and the steps they take to compensate. The first, titled "Three Big Lies: Typical Design Failures in Game Programming," puts forth that many of the biggest issues we face as programmers is of our own design. Essentially, we [...]]]></description>
			<content:encoded><![CDATA[<p>I recently found two fantastic presentations the guys from <a title="Insomniac Games" href="http://www.insomniacgames.com">Insomniac </a>put together about misguided/inefficient approaches to programming and the steps they take to compensate.</p>
<p>The first, titled <a title="Three Big Lies..." href="http://www.insomniacgames.com/assets/filesthreebiglies2010.pdf">"Three Big Lies: Typical Design Failures in Game Programming,"</a> puts forth that many of the biggest issues we face as programmers is of our own design. Essentially, we are guilty of over abstracting and over modeling.  They argue that since all programming boils down to data transformations, we should just focus on the data.  "World Modeling" may be a nice way to ease new programmers into the field, but it is not necessarily the most efficient approach.</p>
<p>The second presentation focused on a design paradigm that I have worked very hard to create for many of my own projects.  <a title="A Dynamic Component Architecture..." href="http://www.insomniacgames.com/assets/filesadynamiccomponentarchitectureforhighperformancegameplay.pdf">"A Dynamic Component Architecture for High Performance Gameplay,"</a> essentially lays out a system for modeling game objects through composition of relatively flat hierarchies of components.  Where more traditional approaches create individual objects with complex inheritance systems.  The author not only explains the benefits of the system, but also a sample of his API and many examples of how it helps improve their system.</p>
<p>If these articles don't challenge the way you program, then either you are a genius and have already made these revelations, or you're an idiot.  Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2010/06/three-big-lies-about-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GNU Patch in Windows 7 or Vista</title>
		<link>http://jameswynn.com/2010/03/gnu-patch-in-windows-7-or-vista/</link>
		<comments>http://jameswynn.com/2010/03/gnu-patch-in-windows-7-or-vista/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 15:09:26 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=186</guid>
		<description><![CDATA[I just had a little fight with Windows 7 about permissions. It seems that it demands that any executable with the word "patch" in the name must be run with administrative privileges. After fighting with it for a few minutes about the absurdity of the problem, I resorted to a simple hack. Rename patch.exe to [...]]]></description>
			<content:encoded><![CDATA[<p>I just had a little fight with Windows 7 about permissions. It seems that it demands that any executable with the word "<em>patch</em>" in the name must be run with administrative privileges. After fighting with it for a few minutes about the absurdity of the problem, I resorted to a simple hack.</p>
<ol>
<li>Rename <em>patch.exe</em> to <em>pat<strong>s</strong>h.exe</em>.</li>
<li>Then create patch.bat in the same directory containing the following command:<br />
<span style="font-family: monospace;">@patsh.exe %*</span></li>
</ol>
<p>You will never notice a difference, and Windows 7 can go politely F*** itself.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2010/03/gnu-patch-in-windows-7-or-vista/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fast Delicious Artisan Breads</title>
		<link>http://jameswynn.com/2009/10/fast-delicious-artisan-breads/</link>
		<comments>http://jameswynn.com/2009/10/fast-delicious-artisan-breads/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 16:46:42 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cooking]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=181</guid>
		<description><![CDATA[A couple days ago I came across an awesome recipe while working on a new bagel recipe. It purported that you could make tasty artisan breads in only five minutes per day. I was a bit skeptical at first, but after reading the article I was convinced. Essentially you treat the bread like a sourdough, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.amazon.com/Artisan-Bread-Five-Minutes-Revolutionizes/dp/0312362919"><img class="alignleft size-full wp-image-182" title="Artisan Bread in Five Minutes a Day" src="http://jameswynn.com/wp-content/uploads/2009/10/artisan-bread-in-five-minutes-a-day-the-discovery-that-revolutionizes-home-baking.jpg" alt="Artisan Bread in Five Minutes a Day" width="325" height="400" /></a>A couple days ago I came across an awesome recipe while working on a new bagel recipe. It purported that you could make tasty <a href="http://www.motherearthnews.com/Real-Food/Artisan-Bread-In-Five-Minutes-A-Day.aspx">artisan breads in only five minutes per day</a>. I was a bit skeptical at first, but after reading the article I was convinced. Essentially you treat the bread like a sourdough, and keep a big lump in your fridge until you want some bread. All you need to do in preparation is shape the dough, heat up the oven, and then bake. Thats not an exaggeration either.</p>
<p>Using their system, if you have about an hour and a half of time around the house, you can have a delicious loaf of bread. It only takes about 5 minutes of work, but it breaks down to something like:</p>
<ul>
<li>40 minutes to rise</li>
<li>30 minutes to bake</li>
<li>20 minutes to cool</li>
</ul>
<p>But really, you only have to do about a minute's worth of work between each phase. I liked the recipe so much, I bought <a href="http://www.amazon.com/Artisan-Bread-Five-Minutes-Revolutionizes/dp/0312362919">their book</a>. The full recipe is listed after the jump.</p>
<p><span id="more-181"></span>This recipe is essentially the same as can be found in the linked article and in Jeff and Zoe's book, though without all of their helpful tips. It makes 4 1-pound loaves:</p>
<ul>
<li>3 cups warm water</li>
<li>1 1/2 Tbsp yeast</li>
<li>1 1/2 Tbsp coarse salt
<ul>
<li>for tablesalt reduce by 25%</li>
</ul>
</li>
<li>6 1/2 cups unbleached flour</li>
</ul>
<p>In a 5 quart bowl mix the yeast and salt into the water. Don't worry too much if everything doesn't dissolve.</p>
<p>Mix in the flour all at once. Don't worry about kneading the dough as it is not necessary. Just mix it until all the dry patches of flour are gone.</p>
<p>Cover with a lid (not air tight!) and leave out for 2-5 hours to rise.</p>
<p>Refrigerate for up to two weeks, but a minimum of 2 hours (so its easier to work with).</p>
<p>Dust the dough with a bit of flour, grab about a grapefruit sized ball and cut it away from the rest of the dough.</p>
<p>Cover and refrigerate the remaining dough.</p>
<p>Grab the corners of the dough and stretch them around to the bottom so that it has a smooth finish (do not kneed the dough, it is not necessary).</p>
<p>Dust a pizza peel with corn meal and place the dough on it.</p>
<p>Allow the dough to rise for about 40 minutes.</p>
<p>Meanwhile, place a baking stone in the oven, and a broiler pan on another level.</p>
<p>Preheat oven to 425 for 20 minutes (to prep the baking stone).</p>
<p>Place dough on baking stone.</p>
<p>Pour 1 cup hot water into broiler pan to create steam.</p>
<p>Bake for 30 minutes.</p>
<p>Remove and let cool for about 20 minutes or until completely cooled.</p>
<p>Enjoy delicious bread!</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2009/10/fast-delicious-artisan-breads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Barefoot Running</title>
		<link>http://jameswynn.com/2009/10/barefoot-running/</link>
		<comments>http://jameswynn.com/2009/10/barefoot-running/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 15:13:56 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[health]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=174</guid>
		<description><![CDATA[A while back I read an interesting article about the Tarahumara in Mexico and their running style. Seems they are widely reputed for there ability to run for extreme distances. They are known to run hundreds of miles, or for days on end. More amazing than that though, is the fact that they do it [...]]]></description>
			<content:encoded><![CDATA[<p>A while back I read an interesting article about the <a href="http://en.wikipedia.org/wiki/Tarahumara">Tarahumara </a>in Mexico and their running style. Seems they are widely reputed for there ability to run for extreme distances. They are known to run hundreds of miles, or for days on end. More amazing than that though, is the fact that they do it all barefoot. No hi-tech Nike's for them, just the amazing machine that is the human foot.</p>
<p>The basic style is that you run on the balls of your feet instead of landing on your heels and rolling to your toes. Modern shoes prevent running on your toes, unless you are perhaps at a full sprint. Interestingly, the barefoot running style allegedly also helps prevent many common running related injuries. People who run barefoot generally have fewer problems with shin splints, ankle problems and knee problems.</p>
<p><span style="background-color: #ffffff; "><img class="size-medium wp-image-175 alignleft" title="Vibram FiveFinger KSO" src="http://jameswynn.com/wp-content/uploads/2009/10/vibram_kso_m148-300x199.jpg" alt="Vibram FiveFinger KSO" width="300" height="199" /></span></p>
<p><span style="background-color: #ffffff; ">Recently I started mulling over the concept again, and wondered what a shoe would look like that allowed you to run as though you were barefoot, but still gave you some protection. I played with the idea a bit, and then searched to see if anyone had made it yet. Turns out the awesome people at <a href="http://www.vibramfivefingers.com/index.cfm">Vibram</a> beat me to it with the <a href="http://www.vibramfivefingers.com/products/products_KSO_m.cfm">Five Finge</a>r.</span></p>
<p><span style="background-color: #ffffff;">I haven't been able to jog in about a year, because of back problems that are aggravated by the impact of traditional jogging styles. Wearing these shoes, though, I have been able to run 10x as far and still no back pains. Best. Purchase. Ever.</span></p>
<p><span style="background-color: #ffffff;"><a href="http://www.google.com/search?q=define:IANAMD">IANAMD</a>, but if you cannot run because of chronic pains in your ankles/knees/back then perhaps you should give them a shot.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2009/10/barefoot-running/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Accessing SQLite databases in C++ using SOCI</title>
		<link>http://jameswynn.com/2009/10/accessing-sqlite-databases-in-c-using-soci/</link>
		<comments>http://jameswynn.com/2009/10/accessing-sqlite-databases-in-c-using-soci/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 19:31:59 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=163</guid>
		<description><![CDATA[I recently decided to use SOCI and SQLite at work and found that neither there is not a super straight forward path for setting this up. As of SOCI version 3.0.0 there is no support for Visual Studio 2008, so I had to convert and fix a few bugs resulting from that. There were some [...]]]></description>
			<content:encoded><![CDATA[<p>I recently decided to use <a href="http://soci.sourceforge.net">SOCI</a> and <a href="http://www.sqlite.org/">SQLite</a> at work and found that neither there is not a super straight forward path for setting this up. As of SOCI version 3.0.0 there is no support for <strong>Visual Studio 2008</strong>, so I had to convert and fix a few bugs resulting from that. There were some path issues as well. Also they don't package the SQLite interface with SOCI so you have to checkout the repo to get access to it. After getting that there are still a few snags, not to mention actually setting up SQLite as a library.</p>
<p>[Updated: 10/13/2009]<br />
After writing this article the SOCI team has resolved some of these issues, so some of these steps are no longer necessary.</p>
<h2><span id="more-163"></span></h2>
<h2>Step 1: Setup SQLite</h2>
<h3>Step 1.1</h3>
<p>Download the SQLite 3.6.18 source and library files.</p>
<ul>
<li><a href="http://www.sqlite.org/sqlite-amalgamation-3_6_18.zip">Source</a></li>
<li><a href="http://www.sqlite.org/sqlitedll-3_6_18.zip">Libraries</a></li>
</ul>
<h3>Step 1.2:</h3>
<p>Unarchive the SQLite archives into a directory, mine will be <em>c:\usr\sqlite3</em></p>
<h3>Step 1.3:</h3>
<p>Create the sqlite3.lib file by using Visual Studio's lib command:</p>

<div class="wp_syntax"><div class="code"><pre class="batch" style="font-family:monospace;">LIB /DEF:sqlite3.def</pre></div></div>

<h2><strong>Step 2: Setup SOCI</strong></h2>
<h3>Step 2.1:</h3>
<p>Download the <a href="http://soci.git.sourceforge.net/git/gitweb.cgi?p=soci/soci;a=snapshot;h=ed12736cf7418abcef7a5b2230c745adaa9aaaa3;sf=tgz">head of SOCI's git repository</a></p>
<h3>Step 2.2:</h3>
<p>Decompress the file into another directory, mine will be <em>c:\usr\soci</em></p>
<h3>Step 2.3:</h3>
<p>Soci requires <em>stdint.h</em> but Visual Studio 2008 does not provide it, so simply download <a href="http://www.azillionmonkeys.com/qed/pstdint.h">pstdint.h</a> and rename it to <em>stdint.h</em> in the <em>soci\src\core</em> directory.</p>
<h3>Step 2.4:</h3>
<p>Open the directory<em> soci\build</em> and copy <em>msvc80</em> to <em>msvc90</em>.</p>
<p>Now open the msvc90\dll directory.</p>
<p>Through Visual Studio 2008, open the <em>soci_dll.sln</em> file and allow it to convert it with the default parameters.</p>
<h3>Step 2.5: Build SOCI's Core and SQLite3</h3>
<p>SOCI's core project should build without errors, but the sqlite project will have several.</p>
<h3>Step 2.6: Fixing Build Errors</h3>
<p>Now SOCI's core project should build without errors, but the sqlite3 project will definitely fail. It will give two specific errors:</p>
<blockquote>
<pre>fatal error C1083: Cannot open include file: 'sqlite3.h': No such file or directory</pre>
</blockquote>
<p>and</p>
<blockquote>
<pre>error C3163: '_vsnprintf': attributes inconsistent with previous declaration</pre>
</blockquote>
<p>Both are relatively easy to fix.</p>
<h4>Step 2.6.1: Fixing SQLite3 include paths</h4>
<p>In Visual Studio, navigate to View-&gt;Property Manager, then in the pane that shows up, expand the sqlite3 project, then expand "Debug | Win32" then "soci_dll" then double-click on the "soci" object. Select "User Macros" on the sheet you find there.</p>
<p>Find SQLITE3_INCLUDE_DIR and SQLITE_LIB_DIR and change them to the directory created earlier, "c:\usr\sqlite3"</p>
<h4>Step 2.6.2: Fixing _vsnprintf</h4>
<p>[Update 10/13/2009]<br />
This step is no longer needed.</p>
<p>Expand the <strong>core</strong> project and look for soci-platform.h and find a line that says "HAVE_VSNPRINTF"</p>
<p>This is redefining something that VS2008 provides already and confuses the hell out of the compiler. Just comment it out, or change it to look like:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #666666;">// Define if you have the vsnprintf variants.</span>
<span style="color: #339900;">#if _MSC_VER &amp;lt; 1500</span>
<span style="color: #339900;">#	define HAVE_VSNPRINTF 1</span>
<span style="color: #339900;">#	define vsnprintf _vsnprintf</span>
<span style="color: #339900;">#endif</span></pre></div></div>

<h3>Step 2.7 Building SOCI's sqlite3_test project</h3>
<p>This project will be riddled with errors unless you have boost installed. I personally don't use it, so had to comment out large chunks of <em>common-tests.h</em>.  Specifically, comment out the area at the top where it includes the boost headers. Also comment out the contents of test26, test28 and test30.</p>
<p>Also add this line at the bottom of <em>soci-platform.h:</em></p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #339900;">#undef SOCI_USE_BOOST</span></pre></div></div>

<h2>Finished</h2>
<p>Now you should have a working copy of SOCI 3.0.0 with SQLite3 support in Visual Studio 2008. Congratulations!</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2009/10/accessing-sqlite-databases-in-c-using-soci/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SimpleFileWatcher: New version</title>
		<link>http://jameswynn.com/2009/09/simplefilewatcher-new-version/</link>
		<comments>http://jameswynn.com/2009/09/simplefilewatcher-new-version/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 03:46:23 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[SimpleFileWatcher]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=161</guid>
		<description><![CDATA[Just released a new version of SimpleFileWatcher. Not a lot of new content, but a pretty serious bug was fixed for Win32 and some better error handling. I create some more maintainable build scripts using premake. Also, I moved the OgreDemo off to its own directory to help contain all the files. Download: SimpleFileWatcher 2009.09.14]]></description>
			<content:encoded><![CDATA[<p>Just released a new version of SimpleFileWatcher. Not a lot of new content, but a pretty serious bug was fixed for Win32 and some better error handling. I create some more maintainable build scripts using <a href="http://industriousone.com/premake">premake</a>. Also, I moved the OgreDemo off to its own directory to help contain all the files.</p>
<p>Download: <a href="http://simplefilewatcher.googlecode.com/files/SimpleFileWatcher-2009-09-14.zip">SimpleFileWatcher 2009.09.14</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2009/09/simplefilewatcher-new-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up a Symbol Server for Visual Studio 2008</title>
		<link>http://jameswynn.com/2009/08/setting-up-a-symbol-server-for-visual-studio-2008/</link>
		<comments>http://jameswynn.com/2009/08/setting-up-a-symbol-server-for-visual-studio-2008/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 17:34:03 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://jameswynn.com/?p=157</guid>
		<description><![CDATA[Debugging an application after its been released can be a total pain.  So, over time I've collected some software and techniques for making it a bit easier on myself and my team.  We ship our product with a modified version of  Hans Dietrich's XCrashReport to provide logs, system information, and minidumps when our application inevitably crashes. [...]]]></description>
			<content:encoded><![CDATA[<p>Debugging an application after its been released can be a total pain.  So, over time I've collected some software and techniques for making it a bit easier on myself and my team.  We ship our product with a modified version of  <a title="XCrashReport" href="http://www.codeproject.com/KB/debug/XCrashReportPt4.aspx">Hans Dietrich's XCrashReport</a> to provide logs, system information, and minidumps when our application inevitably crashes. If you're not already using something similar I would highly recommend checking it out.</p>
<p>This utility sends us lots of crash dump files and until now we've always had to dig back through our archives to find the corresponding symbols and source code. But today I decided to rid us of the headache and set up a <a href="http://support.microsoft.com/kb/319037">Symbol Server</a> that could automatically determine our version and load it into Visual Studio 2008. The documentation can be a bit lacking at times, so I will try to illuminate the path that I took.</p>
<p><strong>Step 1:</strong><br />
Download <a href="http://www.microsoft.com/whdc/devtools/debugging/default.mspx">Debugging Tools for Windows</a>. This provides you with symstore.exe which will be important for creating the symbol store.</p>
<p><strong>Step 1.5:</strong><br />
Add the Debugging Tools directory to your path, so we have access to symstore.exe.</p>
<p><strong>Step 2:</strong><br />
Create a folder on your build server and share it such that you have something like \\BuildServer\Symbols available to your workstation.</p>
<p><strong>Step 3:</strong><br />
For each build, execute a command like</p>
<blockquote><p>symstore.exe add /r /p /f U:\Project\Bin\*.* /s \\BuildServer\Symbols /t "My Project" /v "Build 42"</p></blockquote>
<p>Where <em>U:\Project\Bi</em>n is the directory with your .pdb files, <em>\\BuildServer\Symbols</em> is obviously the symbols directory, <em>"My Project"</em> is the name of the project, and <em>"Build 42"</em> is the description of the version.</p>
<p><strong>Step 4:</strong><br />
Open Visual Studio 2008,  go to Tools-&gt;Options-&gt;Debugging-&gt;Symbols. Set your cache directory to something like <em>C:\SymbolCache</em>, then add the location of the new symbol store: <em>\\BuildServer\Symbols</em>.</p>
<p><strong>Step 4.5:</strong><br />
At this point, it would be advisable to add the Microsoft Symbol Store to the locations list too: <em>http://msdl.microsoft.com/download/symbols</em>.</p>
<p>This should facilitate debugging crash dumps without tracking down the symbols. Also, check out the <a href="http://msdn.microsoft.com/en-us/library/ms680641(VS.85).aspx">Source Server</a> which will access your VCS system to pull out the correct source code files for you automatically too.</p>
]]></content:encoded>
			<wfw:commentRss>http://jameswynn.com/2009/08/setting-up-a-symbol-server-for-visual-studio-2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.468 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-05 13:29:07 -->

