<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Ryan Ternier  : Windows Services</title><link>http://weblogs.asp.net/rternier/archive/tags/Windows+Services/default.aspx</link><description>Tags: Windows Services</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Tools I cannot work without.</title><link>http://weblogs.asp.net/rternier/archive/2007/10/11/ites-references-and-articles-that-i-can-not-work-without-2.aspx</link><pubDate>Thu, 11 Oct 2007 18:52:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:4517604</guid><dc:creator>rternier</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/rternier/rsscomments.aspx?PostID=4517604</wfw:commentRss><comments>http://weblogs.asp.net/rternier/archive/2007/10/11/ites-references-and-articles-that-i-can-not-work-without-2.aspx#comments</comments><description>&lt;p mce_keep="true"&gt;I posted an article about &lt;a href="http://weblogs.asp.net/rternier/archive/2007/01/24/sites-references-and-articles-that-i-can-not-work-without.aspx" mce_href="http://weblogs.asp.net/rternier/archive/2007/01/24/sites-references-and-articles-that-i-can-not-work-without.aspx"&gt;Sites, References and Articls that I cannot work without&lt;/a&gt; awhile back. I decided I'd follow up on it on tools I cannot work without.&lt;br&gt;&amp;nbsp;&lt;/p&gt;

&lt;p mce_keep="true"&gt;&lt;a href="http://msdn2.microsoft.com/en-gb/vstudio/default.aspx" mce_href="http://msdn2.microsoft.com/en-gb/vstudio/default.aspx"&gt;&lt;b&gt;Visual Studio 2005&lt;/b&gt;.&lt;/a&gt;&lt;br&gt;Yea, I can't really work without this. This is my bread, butter, coffee, and ninja-snacks all coupled into one nice thing.&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;a href="http://www.getfirefox.com" mce_href="http://www.getfirefox.com"&gt;&lt;b&gt;FireFox 2.x&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This is my main development browser. I always create web sites and web applications to work first in FireFox. I then modify little bits to make sure they work in IE7.&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;a href="http://chrispederick.com/work/web-developer/" mce_href="http://chrispederick.com/work/web-developer/"&gt;&lt;b&gt;FireFox Developer Toolbar.&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This is the main tool I use while working with FireFox. It's a very lightweight accurate and very efficient tool for web design.&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;a href="http://getfirebug.com/faq.html" mce_href="http://getfirebug.com/faq.html"&gt;&lt;b&gt;FireFox - FireBug&lt;/b&gt;&lt;/a&gt;&lt;br&gt;FireBug is not a priceless tool that I cannot work without. FireBug allows you to navigate through the HTML DOM as the browser sees it. Whenever you ViewSource (FF/IE) it will show you what the browser originally recieved from a web server. However with all the dynamic content being generated in todays world, we need to see what that content is. Firebug allows us to do this. Firebug also allows developers to disable and add CSS styles dynamically to any webpage they're browser. It also comes with a built in JavaScript debugger.&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;a href="http://litmusapp.com/cssvista/" mce_href="http://litmusapp.com/cssvista/"&gt;&lt;b&gt;CSS Vista&lt;/b&gt;&lt;/a&gt;&lt;br&gt;I saw this on a blog awhile back and decided to give it a try. It is a great tool for fixing small CSS issues. You give it a URL and it will render that webpage in both FireFox 2.x and IE7... and displays both versions on one screen. From there you can modify the CSS files&amp;nbsp; that the URL uses and both browsers use your changes as you type them (Real Time!).&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;a href="http://theimes.com/archive/2006/12/28/Debugging-Windows-Services-is-a-Pain.aspx" mce_href="http://theimes.com/archive/2006/12/28/Debugging-Windows-Services-is-a-Pain.aspx"&gt;&lt;b&gt;Windows Service Debugger&lt;/b&gt;&lt;/a&gt;&lt;br&gt;Anderson Imes blogged about this little tool he wrote. Now that I am working with Windows Services more, this tool is insanely helpful. All you do is reference his DLL, and change a single line of code in your Start method of your windows service. From there you can hit F5(Run) and you can debug directly inside your service.&lt;/p&gt;&lt;p mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt;&lt;p mce_keep="true"&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;p mce_keep="true"&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=4517604" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/rternier/archive/tags/ASP.NET+/default.aspx">ASP.NET </category><category domain="http://weblogs.asp.net/rternier/archive/tags/AJAX/default.aspx">AJAX</category><category domain="http://weblogs.asp.net/rternier/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/rternier/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Windows+Services/default.aspx">Windows Services</category><category domain="http://weblogs.asp.net/rternier/archive/tags/FireFox/default.aspx">FireFox</category></item><item><title>Web Services, Sessions and the Windows Service</title><link>http://weblogs.asp.net/rternier/archive/2007/09/25/web-services-sessions-and-the-windows-service.aspx</link><pubDate>Tue, 25 Sep 2007 21:22:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:4367766</guid><dc:creator>rternier</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/rternier/rsscomments.aspx?PostID=4367766</wfw:commentRss><comments>http://weblogs.asp.net/rternier/archive/2007/09/25/web-services-sessions-and-the-windows-service.aspx#comments</comments><description>&lt;div&gt;
&lt;p&gt;For those that didn’t know, my beautiful wife is pregnant with our first child. The due date is the first week of November.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Because of this news I had to change jobs to make more money for my family. It was one of the hardest decisions I had to make as I loved working where I was. However, I’m having a blast working at my new job. I have always been a web developer. It was very rare when I needed to do any Windows Forms development. &lt;/p&gt;
&lt;p&gt;I’m working on a cool program that I’m not going to tell you about. However, I have played with many cool pieces of .NET that I’ve used before but not in this context.&lt;/p&gt;
&lt;p&gt;Most web programmers have used Web Services. I’ve used them a lot, but only in the web-web world.&lt;span&gt;&amp;nbsp; &lt;/span&gt;You know, using JavaScript to call a web service, or call a web service from your code-behind. Very simple stuff. What I needed to do was write a web service that would be consumed from a windows service. However, I needed to enable Session on this web service so it was always in-sync with the windows service.&lt;/p&gt;
&lt;p&gt;Enabling Sessions on a web service is very easy:&lt;/p&gt;
&lt;div style="background: rgb(34, 34, 21) none repeat scroll 0% 50%; font-size: 11pt; color: rgb(223, 223, 191); font-family: Consolas; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;
&lt;div style="border: 1pt solid rgb(204, 204, 204); padding: 1pt; background: rgb(34, 34, 21) none repeat scroll 0% 50%; overflow: auto; font-family: Consolas; font-size: 11pt; color: rgb(223, 223, 191); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 100%;"&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;77&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;span style="color: rgb(225, 121, 91);"&gt;WebMethod&lt;/span&gt;(EnableSession=&lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;true&lt;/span&gt;)]&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;78&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;bool&lt;/span&gt; SessionExists()&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;79&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;80&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;if&lt;/span&gt; (Session[&lt;span style="color: rgb(200, 145, 145);"&gt;"AgencyID"&lt;/span&gt;] == &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;null&lt;/span&gt;)&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;81&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;return&lt;/span&gt; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;false&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;82&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;else&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;83&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;return&lt;/span&gt; &lt;span style="color: rgb(204, 204, 55); font-weight: bold;"&gt;true&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;84&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;/div&gt;

&lt;/div&gt;
&lt;p&gt;However, getting the right cookie information to the windows service I’m writing was a bit difficult. Every web service object has the following object: CookieContainer. &lt;span&gt;&amp;nbsp;&lt;/span&gt;This object basically eats and stores all cookies returned from any web service call (You don’t even need to pass anything back, it’s all automatic).&lt;/p&gt;
&lt;p&gt;Here is how to use the CookieContainer object. This is a method from my windows service:&lt;/p&gt;
&lt;div style="background: rgb(34, 34, 21) none repeat scroll 0% 50%; font-size: 11pt; color: rgb(223, 223, 191); font-family: Consolas; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;
&lt;div style="background: rgb(34, 34, 21) none repeat scroll 0% 50%; font-size: 11pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: rgb(223, 223, 191); font-family: Consolas;"&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;81&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;private&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;bool&lt;/span&gt; Authenticate()&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;82&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;83&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(71, 148, 69);"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;84&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;85&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;try&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;86&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;87&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Authentication.&lt;span style="color: rgb(225, 121, 91);"&gt;Manager&lt;/span&gt; m = &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;new&lt;/span&gt; Authentication.&lt;span style="color: rgb(225, 121, 91);"&gt;Manager&lt;/span&gt;(settings.AuthenticationMethod);&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;88&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(71, 148, 69);"&gt;//Load a Cookie that was stored in an XML file from the Login Factory&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;89&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.Net.&lt;span style="color: rgb(225, 121, 91);"&gt;Cookie&lt;/span&gt; cookie = m.loadAuthCookie();&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;90&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;if&lt;/span&gt; (cookie == &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;null&lt;/span&gt;) &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;return&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;false&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;91&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;92&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; cc.Add(cookie);&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;93&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Updater.&lt;span style="color: rgb(225, 121, 91);"&gt;Updater&lt;/span&gt; u = &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;new&lt;/span&gt; Updater.&lt;span style="color: rgb(225, 121, 91);"&gt;Updater&lt;/span&gt;();&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;94&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; u.CookieContainer = cc;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;95&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;if&lt;/span&gt; (u.SessionExists())&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;96&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;return&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;true&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;97&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;else&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;98&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;return&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;false&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;99&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;100&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;catch&lt;/span&gt; (&lt;span style="color: rgb(225, 121, 91);"&gt;Exception&lt;/span&gt; ex)&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;101&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;102&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;throw&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(204, 204, 55);"&gt;new&lt;/span&gt; &lt;span style="color: rgb(225, 121, 91);"&gt;Exception&lt;/span&gt;(&lt;span style="color: rgb(200, 145, 145);"&gt;"Failed to Load Authentication Cookie\n"&lt;/span&gt; + ex.Message);&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;103&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;104&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;105&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/div&gt;&lt;!--EndFragment--&gt;&lt;/div&gt;
&lt;p&gt;The CookieContainer object must be instantiated before you make your web service call. Once you make your web service call and it completes, you will receive a session cookie. Here is the cookie in XML form (this is the format I use):&lt;/p&gt;&lt;span style="background: black none repeat scroll 0% 50%; color: rgb(223, 223, 191); font-family: Consolas; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;
&lt;div style="background: rgb(34, 34, 21) none repeat scroll 0% 50%; font-size: 11pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: rgb(223, 223, 191); font-family: Consolas;"&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;lt;?&lt;span style="color: rgb(225, 121, 95);"&gt;xml&lt;/span&gt; &lt;span style="color: rgb(204, 204, 55);"&gt;version&lt;/span&gt;=&lt;span style="color: rgb(200, 145, 145);"&gt;"1.0"&lt;/span&gt; &lt;span style="color: rgb(204, 204, 55);"&gt;encoding&lt;/span&gt;=&lt;span style="color: rgb(200, 145, 145);"&gt;"utf-8"&lt;/span&gt;?&amp;gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;lt;&lt;span style="color: rgb(225, 121, 95);"&gt;authCookie&lt;/span&gt;&amp;gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;span style="color: rgb(225, 121, 95);"&gt;name&lt;/span&gt;&amp;gt;ASP.NET_SessionId&amp;lt;/&lt;span style="color: rgb(225, 121, 95);"&gt;name&lt;/span&gt;&amp;gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;span style="color: rgb(225, 121, 95);"&gt;value&lt;/span&gt;&amp;gt;pae0be55uy2dw5z1wapmzp55&amp;lt;/&lt;span style="color: rgb(225, 121, 95);"&gt;value&lt;/span&gt;&amp;gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;span style="color: rgb(225, 121, 95);"&gt;domain&lt;/span&gt;&amp;gt;localhost&amp;lt;/&lt;span style="color: rgb(225, 121, 95);"&gt;domain&lt;/span&gt;&amp;gt;&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;&lt;span style="color: rgb(133, 172, 141);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6&lt;/span&gt;&amp;nbsp;&amp;lt;/&lt;span style="color: rgb(225, 121, 95);"&gt;authCookie&lt;/span&gt;&amp;gt;&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=4367766" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/rternier/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Cookies/default.aspx">Cookies</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Windows+Services/default.aspx">Windows Services</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Session+State/default.aspx">Session State</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://weblogs.asp.net/rternier/archive/tags/Windows+Forms/default.aspx">Windows Forms</category></item></channel></rss>