<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/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>knom's developer corner : Work</title><link>http://blogs.msdn.com/knom/archive/tags/Work/default.aspx</link><description>Tags: Work</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Slides and Demos from BigDays 2009 are online!</title><link>http://blogs.msdn.com/knom/archive/2009/03/22/slides-and-demos-from-bigdays-2009-are-online.aspx</link><pubDate>Mon, 23 Mar 2009 00:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9499752</guid><dc:creator>knom</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/knom/comments/9499752.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=9499752</wfw:commentRss><description>&lt;p&gt;These days I'm travelling around austria with our biggest developer &amp;amp; IT Pro event Big&amp;gt;Days 2009!&lt;/p&gt;  &lt;p&gt;This year's theme was &amp;quot;packen wir's an&amp;quot; - translated &amp;quot;let's get to work&amp;quot;!&lt;/p&gt;  &lt;p&gt;Accompanying the theme we built a multi-tier application with .NET 3.5 and Silverlight called &amp;quot;Rent-A-Worker&amp;quot;!&lt;/p&gt;  &lt;p&gt;You can &lt;strong&gt;download&lt;/strong&gt; &lt;strong&gt;the sources&lt;/strong&gt; at &lt;a href="http://www.codeplex.com/BigDays09/"&gt;http://www.codeplex.com/BigDays09/&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;If you're interested in the &lt;strong&gt;slides&lt;/strong&gt; of my four sessoins, feel free to get them here&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session1.pdf" target="_blank" mce_href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session1.pdf"&gt;The ADO.NET Entity Framework&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session4.pdf" target="_blank" mce_href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session4.pdf"&gt;Smart Web Clients mit Silverlight&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session5.pdf" target="_blank" mce_href="http://www.knor.net/Downloads/Events/2009/BigDays/Track3_Session5.pdf"&gt;Composite Smart Clients mit WPF und &amp;quot;PRISM&amp;quot;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.knor.net/Downloads/Events/2009/BigDays/Track4_Session2.pdf" target="_blank" mce_href="http://www.knor.net/Downloads/Events/2009/BigDays/Track4_Session2.pdf"&gt;Schluss mit Copy &amp;amp; Paste - Effizienter Arbeiten mit VS 2008&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9499752" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://blogs.msdn.com/knom/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/knom/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/knom/archive/tags/Composite+WPF+Guidance/default.aspx">Composite WPF Guidance</category></item><item><title>WPF Webcast - New Year's resolutions</title><link>http://blogs.msdn.com/knom/archive/2009/01/07/wpf-webcast-new-year-s-resolutions.aspx</link><pubDate>Wed, 07 Jan 2009 13:34:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9287165</guid><dc:creator>knom</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/knom/comments/9287165.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=9287165</wfw:commentRss><description>&lt;table cellspacing="0" cellpadding="2" width="715" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;img title="NET_v_rgb2.jpg" height="152" alt="NET_v_rgb2.jpg" src="http://blogs.msdn.com/blogfiles/msdnat/WindowsLiveWriter/UserInterfacesmitWPFLiveWebcastfrBeginne_C9AD/NET_v_rgb2.jpg_3.jpg" width="160" align="left" border="0" /&gt;&lt;/td&gt;        &lt;td valign="top" width="513"&gt;I’ve a lot of New Year’s resolutions for 2009 :-) One of them is to blog more often (we’ll see how this works..) another is to do a series of &lt;strong&gt;webcasts around WPF&lt;/strong&gt;.           &lt;br /&gt;We’re starting with our first &lt;strong&gt;WPF webcast &lt;/strong&gt;on &lt;strong&gt;Friday, January 9th &lt;/strong&gt;at &lt;strong&gt;10am &lt;/strong&gt;with an overview over WPF and XAML.          &lt;br /&gt;          &lt;br /&gt;Topics we’ll cover:          &lt;br /&gt;*) Why a new UI framework          &lt;br /&gt;*) What tools, frameworks, .. do we need for WPF?          &lt;br /&gt;*) What is XAML, what is it’s syntax.          &lt;br /&gt;          &lt;br /&gt;&lt;a href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032400222&amp;amp;EventCategory=2&amp;amp;culture=de-AT&amp;amp;CountryCode=AT"&gt;&lt;strong&gt;&amp;gt;&amp;gt; Register now at the Webcast Website&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9287165" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/knom/archive/tags/WPF/default.aspx">WPF</category></item><item><title>.NET Roadshow - Demo Solution</title><link>http://blogs.msdn.com/knom/archive/2008/09/19/net-roadshow-demo-solution.aspx</link><pubDate>Fri, 19 Sep 2008 17:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8958759</guid><dc:creator>knom</dc:creator><slash:comments>5</slash:comments><comments>http://blogs.msdn.com/knom/comments/8958759.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=8958759</wfw:commentRss><description>&lt;P&gt;The demo solution from our .NET Beginners Roadshow is no ready for download for attendees and all others.&lt;/P&gt;
&lt;P&gt;The scenario is event management.&lt;/P&gt;
&lt;P&gt;The solution consists of 4 parts:&lt;/P&gt;
&lt;P&gt;*) &lt;STRONG&gt;Data Access layer &lt;/STRONG&gt;using ADO.NET Entity Framework&lt;/P&gt;
&lt;P&gt;*)&lt;STRONG&gt; Business Logic Service &lt;/STRONG&gt;hosted as a WCF service.&lt;/P&gt;
&lt;P&gt;*) &lt;STRONG&gt;Web Site, &lt;/STRONG&gt;written in ASP.NET&lt;STRONG&gt;, &lt;/STRONG&gt;which allows attendees to register and view their events, including a &lt;/P&gt;
&lt;P&gt;*) &lt;STRONG&gt;Silverlight Web Control&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;*) &lt;STRONG&gt;Desktop Client&lt;/STRONG&gt; using WPF, for managing the events.&lt;/P&gt;
&lt;P&gt;Here some screen shots:&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=722 border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=132&gt;&lt;A href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/dbdiagramm.jpg" mce_href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/dbdiagramm.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=139 alt=dbdiagramm src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/dbdiagramm_thumb.jpg" width=191 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/dbdiagramm_thumb.jpg"&gt;&lt;/A&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=133&gt;&lt;A href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot2.jpg" mce_href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=141 alt=screenshot2 src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot2_thumb.jpg" width=175 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot2_thumb.jpg"&gt;&lt;/A&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=455&gt;&lt;A href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot1.jpg" mce_href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot1.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=141 alt=screenshot1 src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot1_thumb.jpg" width=144 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/a9c69e26a208.NETRoadshowDemoSolution_E24D/screenshot1_thumb.jpg"&gt;&lt;/A&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;Feel free to have a look at the source code here.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8958759" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/knom/attachment/8958759.ashx" length="3263214" type="application/x-zip-compressed" /><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://blogs.msdn.com/knom/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/knom/archive/tags/WPF/default.aspx">WPF</category></item><item><title>On the road -  The .NET Beginners Road Show</title><link>http://blogs.msdn.com/knom/archive/2008/08/12/on-the-road-the-net-beginners-road-show.aspx</link><pubDate>Tue, 12 Aug 2008 14:41:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8850569</guid><dc:creator>knom</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/knom/comments/8850569.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=8850569</wfw:commentRss><description>&lt;p&gt;From September 16th to 25th I'll be on the road with the .NET Beginners Road Show together with my colleague &lt;a href="http://blogs.msdn.com/mszcool" target="_blank"&gt;Mario&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/austria/msdn/netstartups/"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="188" alt="763x200_NetBeginnersRoadShow_050808" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/OntheroadThe.NETBeginnersRoadShow_C087/763x200_NetBeginnersRoadShow_050808_3.jpg" width="660" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Our goal is to target newcomers to .NET and show them, how to implement a simple solution over the three tiers.&lt;/p&gt;  &lt;p&gt;Target audience are VB6 guys, as well as Java, C++ or Delphi people.&lt;/p&gt;  &lt;p&gt;As the schedule is pretty tight, we expect the attendees to know the principles of object oriented programming.&lt;/p&gt;  &lt;p&gt;Andreas has produced a series of webcasts, called &amp;quot;Get the basics&amp;quot;, which introduce OOP in .NET for those who don't know (so they can also attend).&lt;/p&gt;  &lt;p&gt;The videos are 15 minutes each (at a maximum) and are going to be published before the event (obviously :-)).&lt;/p&gt;  &lt;p&gt;The roadshow stops in Dornbirn, Innsbruck, Salzburg, Linz, Graz and Wien.&lt;/p&gt;  &lt;p&gt;So pretty much everywhere over Austria.&lt;/p&gt;  &lt;p&gt;It's going to be a tough week travelling around for us two - as we have events every day and have to move on to the next stop in the evening ;-)&lt;/p&gt;  &lt;p&gt;The attendee fee is 85 &amp;#8364; for a one day power event full of demos (and food as well *ggg*).&lt;/p&gt;  &lt;p&gt;Visit &lt;a href="http://www.microsoft.com/austria/msdn/netstartups/"&gt;http://www.microsoft.com/austria/msdn/netstartups/&lt;/a&gt; for more informations - and don't forget to register soon, as the venues have only restricted seats available.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8850569" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Personal/default.aspx">Personal</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category></item><item><title>Advanced Workflow Foundation - MSDN Briefing</title><link>http://blogs.msdn.com/knom/archive/2008/02/29/advanced-workflow-foundation-msdn-briefing.aspx</link><pubDate>Fri, 29 Feb 2008 21:04:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7955042</guid><dc:creator>knom</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/knom/comments/7955042.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=7955042</wfw:commentRss><description>&lt;p&gt;This week I had a session about advanced topics of Windows Workflow Foundation.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/AdvancedWorkflowFoundationMSDNBriefing_10C49/image_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="259" alt="image" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/AdvancedWorkflowFoundationMSDNBriefing_10C49/image_thumb.png" width="260" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Some features I covered were&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Workflow Execution Internals&lt;/li&gt; &lt;li&gt;External Services &amp;amp; Communication&lt;/li&gt; &lt;li&gt;Activity Execution Context&lt;/li&gt; &lt;li&gt;Persistence&lt;/li&gt; &lt;li&gt;Workflow States&lt;/li&gt; &lt;li&gt;Fault Handling&lt;/li&gt; &lt;li&gt;Transactions&lt;/li&gt; &lt;li&gt;Tracking&lt;/li&gt; &lt;li&gt;Advanced Authoring&lt;/li&gt; &lt;li&gt;Dynamic Updates&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Feel free to download the slides and play around with the demos!&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://knom.members.winisp.net/downloads/Advanced_WF.pdf" target="_blank"&gt;Slides&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://knom.members.winisp.net/downloads/Advanced_WF_Demos.zip" target="_blank"&gt;Demos&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7955042" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/WF/default.aspx">WF</category></item><item><title>Silverlight-Showcase "CollectIT" Video</title><link>http://blogs.msdn.com/knom/archive/2008/01/17/silverlight-showcase-collectit-video.aspx</link><pubDate>Thu, 17 Jan 2008 17:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7141877</guid><dc:creator>knom</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/knom/comments/7141877.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=7141877</wfw:commentRss><description>&lt;P&gt;Recently I've been recording a Demo-Video of our sticker-collection application. It's built on a soccer brand (for EM 2008) and is called "CollectIT".&lt;/P&gt;
&lt;P&gt;It was built using Silverlight 1.0. Another cool thing is the LiveID integration.&lt;/P&gt;
&lt;P&gt;And the most important thing - YOU can win a lot of prizes! Just visit &lt;A href="http://www.microsoft.com/austria/collectIT/" mce_href="http://www.microsoft.com/austria/collectIT/"&gt;http://www.microsoft.com/austria/collectIT/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Here's the video:&lt;/P&gt;
&lt;DIV id=17010800&gt;
&lt;SCRIPT type=text/javascript&gt;
createVideoControl("streaming:/33133/CollectITVideo/Video.wmv","CollectIT - http://www.microsoft.com/austria/collectIT","17010800");
&lt;/SCRIPT&gt;
&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7141877" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category></item><item><title>MSDN Subscription - Restrict DVD delivery language</title><link>http://blogs.msdn.com/knom/archive/2008/01/17/msdn-subscription-restrict-dvd-delivery-language.aspx</link><pubDate>Thu, 17 Jan 2008 17:10:26 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7141810</guid><dc:creator>knom</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/knom/comments/7141810.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=7141810</wfw:commentRss><description>&lt;p&gt;If you have an MSDN subscription, I suppose you get a lot of DVDs in different languages like Italian, German, Swedish, etc... every month.&lt;/p&gt; &lt;p&gt;Je ne parle pas français? - Non parlo italiano? - No hablo español?&lt;/p&gt; &lt;p&gt;Good news for all Europeans: You can restrict the languages of DVDs delivered to you!&lt;/p&gt; &lt;p&gt;1.) Go to &lt;a href="https://microsoft.eu.subservices.com/msdn/default.aspx"&gt;https://microsoft.eu.subservices.com/msdn/default.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;2.) Login with your Firstname / Lastname, Email &amp;amp; Subscriber-ID as printed on your MSDN card.&lt;br&gt;&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="230" alt="clip_image001" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001_thumb.jpg" width="260" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;3.) Select "Subscription Information"&lt;br&gt;&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B6%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="48" alt="clip_image001[6]" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B6%5D_thumb.jpg" width="244" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;4.) Select "Change your Media/Language Type".&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B8%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="49" alt="clip_image001[8]" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B8%5D_thumb.jpg" width="644" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;5.) Select the language of your choice:&lt;br&gt;&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B10%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="184" alt="clip_image001[10]" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MSDNSubscriptionRestrictDVDdeliverylangu_D538/clip_image001%5B10%5D_thumb.jpg" width="244" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;And no more hours of throwing away useless DVD - PLUS: you've helped reducing the wastage.&lt;/p&gt; &lt;p&gt;If you surprisingly need a language later on: No need to be confused - you can download it from the MSDN site anyway.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7141810" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Personal/default.aspx">Personal</category></item><item><title>Visual Studio 2008 ("Orcas") problems with .NET Configuration MMC Snap-In</title><link>http://blogs.msdn.com/knom/archive/2007/06/12/visual-studio-2008-orcas-problems-with-net-configuration-mmc-snap-in.aspx</link><pubDate>Tue, 12 Jun 2007 13:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3247505</guid><dc:creator>knom</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/knom/comments/3247505.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=3247505</wfw:commentRss><description>&lt;P&gt;I've heard of problems with Visual Studio "Orcas" - now Visual Studio 2008 Beta&amp;nbsp;1 and March CTP installed together with VS 2005.&lt;/P&gt;
&lt;P&gt;After running the setup of Visual Studio 2008 users had problems opening the .NET Framework configuration MMC snap-in out of administrative tools ("snap-in failed to initialize", ".NET Framework 2.0 Configuration").&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/clip_image001_2.gif" atomicselection="true" mce_href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/clip_image001_2.gif"&gt;&lt;IMG height=132 alt=clip_image001 src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/clip_image001_thumb.gif" width=300 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/clip_image001_thumb.gif"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;When searching for the CLSID in registry I found a hive, where Visual Studio 2008 setup changed something... ;-)&lt;/P&gt;
&lt;P&gt;The hive is &lt;STRONG&gt;&lt;EM&gt;HKEY_CLASSES_ROOT\CLSID\{A22B5BA1-D8CF-4db6-BC91-CFC1A04E2469}&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This is how the normal registry-key should look like:&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=284 alt=image src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_thumb.png" width=640 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_thumb.png"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is what VS 2008 does to it:&lt;A href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_1.png" atomicselection="true" mce_href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_1.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=398 alt=image src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_thumb_1.png" width=640 border=0 mce_src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/VisualStudio20.NETConfigurationMMCSnapIn_B57E/image_thumb_1.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;To fix this, delete the hive and import the original VS 2005 version of it (which I appended as .REG file to this post).&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3247505" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/knom/attachment/3247505.ashx" length="2128" type="application/octet-stream" /><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category></item><item><title>Vista API Demos with C#</title><link>http://blogs.msdn.com/knom/archive/2007/06/04/vista-api-demos-with-c.aspx</link><pubDate>Mon, 04 Jun 2007 19:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3083071</guid><dc:creator>knom</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/knom/comments/3083071.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=3083071</wfw:commentRss><description>&lt;P&gt;Last week I was "On-Tour" at local Usergroups in Vorarlberg (Dornbirn) and Tyrol (Innsbruck).&lt;/P&gt;
&lt;P&gt;I did one of my last presentations of Windows Vista Development! (Meaning NOT .NET 3.0, but unmanaged APIs, like those already posted on my blog).&lt;/P&gt;
&lt;P&gt;Thanks for everyone, who joined me!&lt;BR&gt;For everyone else - the Topics included:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;User Account Control&lt;/LI&gt;
&lt;LI&gt;Windows Error Reporting, Restart &amp;amp; Recovery API&lt;/LI&gt;
&lt;LI&gt;Vista UI Look &amp;amp; Feel&lt;/LI&gt;
&lt;LI&gt;Search&lt;/LI&gt;
&lt;LI&gt;Network List Manager&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Here is the presentation as well as the demos!&lt;BR&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="" href="http://msdnat.members.winisp.net/downloads/Vista_Usergroup.zip" target=_blank mce_href="http://msdnat.members.winisp.net/downloads/Vista_Usergroup.zip"&gt;Presentation&lt;/A&gt;&amp;nbsp;(4,55 MB) 
&lt;LI&gt;&lt;A href="http://msdnat.members.winisp.net/downloads/Knom-Vista-Demos.zip" target=_blank mce_href="http://msdnat.members.winisp.net/downloads/Knom-Vista-Demos.zip"&gt;Demos&lt;/A&gt;&amp;nbsp;(3,82 MB)&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3083071" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.msdn.com/knom/archive/tags/Windows+Vista/default.aspx">Windows Vista</category></item><item><title>Workflow Foundation Basics Slides</title><link>http://blogs.msdn.com/knom/archive/2007/05/01/workflow-foundation-basics-slides.aspx</link><pubDate>Wed, 02 May 2007 00:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2363368</guid><dc:creator>knom</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/knom/comments/2363368.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=2363368</wfw:commentRss><description>&lt;P&gt;Last month I did a basic session on Windows Workflow Foundation at the Global Knowledge .NET Takeoff event!&lt;/P&gt;
&lt;P&gt;Here are the slides, for everyone, who is interested!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2363368" width="1" height="1"&gt;</description><enclosure url="http://msdnat.members.winisp.net/downloads/Global Knowledge - WF.zip" length="1832960" type="application/x-zip-compressed" /><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Events/default.aspx">Events</category></item><item><title>[Update] Big&gt;Days 2007</title><link>http://blogs.msdn.com/knom/archive/2007/03/11/update-big-days-2007.aspx</link><pubDate>Sun, 11 Mar 2007 22:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1860510</guid><dc:creator>knom</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/knom/comments/1860510.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=1860510</wfw:commentRss><description>&lt;P&gt;Hi!&lt;/P&gt;
&lt;P&gt;Last week we tested our session in a 5pm - 11pm rehearsal.. Unfortunately we've found out: it is far too long. Unless you don't care spending &amp;gt; 2 hours we should shorten it up a little. So here's the plan: I threw out the UI and UAC stuff (I will post an entry on the UI stuff details tomorrow, so it's not lost) and Andreas will cut down the gadget demos to the really gadget specific parts!&lt;/P&gt;
&lt;P&gt;So finally we will show: Gadgets, Vista Search Integration, Windows Error Reporting - also giving an overview of Vista Development in general and Web 2.0 / UX (and how gadgets can help to establish this).&lt;/P&gt;
&lt;P&gt;This should fit into 70 minutes (although there will be little extra time left..)&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1860510" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Windows+Vista/default.aspx">Windows Vista</category></item><item><title>My first contact with the Windows Vista Package</title><link>http://blogs.msdn.com/knom/archive/2007/01/30/my-first-contact-with-the-windows-vista-package.aspx</link><pubDate>Tue, 30 Jan 2007 13:45:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1556385</guid><dc:creator>knom</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/knom/comments/1556385.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=1556385</wfw:commentRss><description>&lt;p&gt;Although I've installed the Vista Beta on my first day at Microsoft and upgraded it continuously up to RTM, it took me until today (the official start of Vista sale) to get a real package into my hands! (the bad news.. it doesn't belong to me..)&lt;/p&gt; &lt;p&gt;Here it is...&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista1%5B7%5D.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="164" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista1_thumb%5B7%5D.jpg" width="220" border="0"&gt;&lt;/a&gt; &lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista2%5B8%5D.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="164" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista2_thumb%5B8%5D.jpg" width="218" border="0"&gt;&lt;/a&gt; &lt;a href="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista3%5B7%5D.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="164" src="http://blogs.msdn.com/blogfiles/knom/WindowsLiveWriter/MyfirstcontactwiththeWindowsVistaPackage_A556/vista3_thumb%5B7%5D.jpg" width="220" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Today I was sitting in our local cafeteria, when the local Vista BG-lead passed by heading to ITnT exhibition with some "real-world" Vista packages.&lt;/p&gt; &lt;p&gt;I just had the time to play around a little bit with the package and make some fotos. I think it looks really cool, but it's not that easy to open it, if you don't know how.. maybe some kind of theft protection :-)&lt;/p&gt; &lt;p&gt;Then the packages was gone again.. leaving me with the unspectacular green MSDN subscription version of Vista I have.. :-(&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1556385" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Personal/default.aspx">Personal</category></item><item><title>MVP Day at Microsoft Austria</title><link>http://blogs.msdn.com/knom/archive/2006/10/29/mvp-day-at-microsoft-austria.aspx</link><pubDate>Sun, 29 Oct 2006 18:19:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:896280</guid><dc:creator>knom</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/knom/comments/896280.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=896280</wfw:commentRss><description>
&lt;SCRIPT src="http://www.google-analytics.com/urchin.js" type=text/javascript&gt;
&lt;/SCRIPT&gt;

&lt;SCRIPT type=text/javascript&gt;
_uacct = "UA-964833-1";
urchinTracker();
&lt;/SCRIPT&gt;

&lt;P&gt;Last Wednesday we had the local "MVP Day" in our subsidiary.&lt;BR&gt;A lot of MVPs came to Vienna to meet each other, exchange their experiences and discuss future activities.&lt;/P&gt;
&lt;P&gt;As main contact for MVPs in the Developer &amp;amp; Plattform Group I also joined the meeting.´&lt;BR&gt;I had the chance to introduce myself as well as to point out some activities I'm planning for the next few months.&lt;/P&gt;
&lt;P&gt;I didn't only present the &lt;A class="" href="http://blogs.msdn.com/msdnat/archive/2006/10/18/themenvorschl-auml-ge-f-uuml-r-up-coming-msdn-briefings-was-halten-sie-davon.aspx" target=_blank mce_href="http://blogs.msdn.com/msdnat/archive/2006/10/18/themenvorschl-auml-ge-f-uuml-r-up-coming-msdn-briefings-was-halten-sie-davon.aspx"&gt;planned topics for up-coming MSDN Briefings&lt;/A&gt;&amp;nbsp;but also unveiled our ideas for Big Days 2007. In March and April 2007 we'll be touring through 4 Austrian Cities (Bregenz, Linz, Graz, Vienna). If you're interested in the date of your local BigDays-Event or would like to see a review of the last ones see our &lt;A class="" href="http://blogs.msdn.com/msdnat/archive/2006/10/12/big-days-2007-coming-soon.aspx" target=_blank mce_href="http://blogs.msdn.com/msdnat/archive/2006/10/12/big-days-2007-coming-soon.aspx"&gt;MSDN.AT-Team-Blog&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;It was nice to get to know most of our MVPs at one time :-) and to have talks with them about technologies,&amp;nbsp;life as an MVP, user groups, ...&lt;/P&gt;
&lt;P&gt;Thanks again to all MVPs for coming! &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=896280" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/MVPs/default.aspx">MVPs</category></item><item><title>tune in!.. Podcasts @ MSDN AT</title><link>http://blogs.msdn.com/knom/archive/2006/10/12/tune-in-podcasts-msdn.aspx</link><pubDate>Thu, 12 Oct 2006 22:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:820753</guid><dc:creator>knom</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/knom/comments/820753.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=820753</wfw:commentRss><description>
&lt;SCRIPT src="http://www.google-analytics.com/urchin.js" type=text/javascript&gt;
&lt;/SCRIPT&gt;

&lt;SCRIPT type=text/javascript&gt;
_uacct = "UA-964833-1";
urchinTracker();
&lt;/SCRIPT&gt;

&lt;P&gt;Some time ago we've started producing cool PODCASTS with technical background.&lt;BR&gt;As introduction "footprints" of all members of the Development and Platform Group Austria will be published there. 2 days ago&amp;nbsp;it was my turn to be interviewed. Now my podcast-footprint is "on-air/on-line".&lt;/P&gt;
&lt;P&gt;You can tune in to&amp;nbsp;our &lt;EM&gt;"Microsoft Podcast Network Austria"&lt;/EM&gt; on &lt;A class="" title=http://blogs.msdn.com/talk/ href="http://blogs.msdn.com/talk/" target=_blank mce_href="http://blogs.msdn.com/talk/"&gt;http://blogs.msdn.com/talk/&lt;/A&gt;&amp;nbsp;!&lt;/P&gt;
&lt;P&gt;Beside other footprints there is also an interview with &lt;EM&gt;Dave Green&lt;/EM&gt; (chief architect of Windows Workflow Foundation) and &lt;STRONG&gt;*newly*&lt;/STRONG&gt; added a &lt;EM&gt;video-podcast&lt;/EM&gt; with my colleagues &lt;A class="" href="http://blogs.msdn.com/rjohn/" target=_blank mce_href="http://blogs.msdn.com/rjohn/"&gt;&lt;EM&gt;Robert John&lt;/EM&gt;&lt;/A&gt; and &lt;EM&gt;Martin Fenyö&lt;/EM&gt; about &lt;EM&gt;VS 2005 &amp;amp; MSDN licensing models&lt;/EM&gt;.&lt;/P&gt;
&lt;P&gt;In the near future we're planning to record all our "offline" events, like the MSDN-briefings and also to do interviews with different experts on various topics.&lt;/P&gt;
&lt;P&gt;I personally think it's nice to hear such podcasts while going by car or bike, because they distract me of those&amp;nbsp;annoying traffic-jams :-)&lt;/P&gt;
&lt;P&gt;[Edit] I forgot.. You actually don't know which one of the guys interviewed there is me..&lt;BR&gt;So &lt;A class="" href="http://blogs.msdn.com/talk/archive/2006/10/12/footprint-maximilian-knor-developer-evangelist-bei-microsoft-sterreich.aspx" target=_blank mce_href="http://blogs.msdn.com/talk/archive/2006/10/12/footprint-maximilian-knor-developer-evangelist-bei-microsoft-sterreich.aspx"&gt;here is the direkt URL&lt;/A&gt;&amp;nbsp;to my podcast footprint!&lt;BR&gt;greetz, &lt;EM&gt;knom&lt;/EM&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=820753" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category></item><item><title>My first demo session... - aka. "Spot the error"</title><link>http://blogs.msdn.com/knom/archive/2006/10/11/my-first-demo-session-aka-spot-the-error.aspx</link><pubDate>Wed, 11 Oct 2006 15:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:816884</guid><dc:creator>knom</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/knom/comments/816884.aspx</comments><wfw:commentRss>http://blogs.msdn.com/knom/commentrss.aspx?PostID=816884</wfw:commentRss><description>
&lt;SCRIPT src="http://www.google-analytics.com/urchin.js" type=text/javascript&gt;
&lt;/SCRIPT&gt;

&lt;SCRIPT type=text/javascript&gt;
_uacct = "UA-964833-1";
urchinTracker();
&lt;/SCRIPT&gt;
Today I had my first session as DE! 
&lt;P&gt;I was doing a demo session on Cryptography and Security with .Net 2.0 together with my colleague &lt;A class="" href="http://blogs.msdn.com/mszcool/" target=_blank mce_href="http://blogs.msdn.com/mszcool/"&gt;Mario&lt;/A&gt; (who was DE previously) for a customer (actually for&amp;nbsp;3 of their developers). &lt;/P&gt;
&lt;P&gt;Whereas he was explaining the theories of symmetric- and asymmetric algorithms and XML signing and encryption I did three live codings.&lt;/P&gt;
&lt;P&gt;The first one was a simple demo creating a hash value with MD5- or SHA1CryptoServiceProvider:&lt;/P&gt;&lt;FONT face="Courier New, Verdana"&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Console&lt;/FONT&gt;&lt;FONT size=2&gt;.Write(&lt;/FONT&gt; &lt;FONT color=#800000 size=2&gt;"Enter Cleartext: "&lt;/FONT&gt;&lt;FONT size=2&gt;);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt; &lt;FONT size=2&gt;clearText = &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Console&lt;/FONT&gt;&lt;FONT size=2&gt;.ReadLine();&lt;/FONT&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;SHA1CryptoServiceProvider&lt;/FONT&gt; &lt;FONT size=2&gt;sha1 = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;SHA1CryptoServiceProvider&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] hashBytes = sha1.ComputeHash(&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Encoding&lt;/FONT&gt;&lt;FONT size=2&gt;.Unicode.GetBytes(clearText));&lt;/FONT&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Console&lt;/FONT&gt;&lt;FONT size=2&gt;.WriteLine(&lt;/FONT&gt; &lt;FONT color=#008080 size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;.Format(&lt;/FONT&gt; &lt;FONT color=#800000 size=2&gt;"Hash Value: {0}"&lt;/FONT&gt; &lt;FONT size=2&gt;,&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Convert&lt;/FONT&gt;&lt;FONT size=2&gt;.ToBase64String(hashBytes)));&lt;/FONT&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;As this demo always produces equal hashes for equal cleartexts, it is easier to attack the hashed values. E.g. If a user's password hash was the same as his own he would know the cleartext of the other one (as he knows his own).&lt;/FONT&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;To make password hacking more difficult you could &lt;I&gt;spice up&lt;/I&gt; the demo by including a random &lt;I&gt;salt value&lt;/I&gt;.&lt;BR&gt;Instead of hashing just the cleartext secret you would also&amp;nbsp;include a random number, generated by the RNGCryptoServiceProvider object. This random value can be stored in a public way, but should be different for each user. &lt;BR&gt;Although attackers know the different salts as well as the hash-values, they need to attack each user password on it's own, as the hash is dependent on the user specific salt.&lt;/FONT&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;In my third demo I showed how to encrypt/decrypt data using symmetric algorithms and &lt;I&gt;CryptoStream&lt;/I&gt; objects.&lt;BR&gt;Unfortunately I made a small mistake (but only a small one..) That's why my code didn't work at first...&lt;/FONT&gt; &lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt; &lt;FONT size=2&gt;key = &lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"584Af81Jasdaf(4125908"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt; &lt;FONT size=2&gt;clearText = &lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"Hello World!"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;TripleDESCryptoServiceProvider&lt;/FONT&gt; &lt;FONT size=2&gt;tripledes = &lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;TripleDESCryptoServiceProvider&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Rfc2898DeriveBytes&lt;/FONT&gt; &lt;FONT size=2&gt;deriveBytes =&amp;nbsp;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Rfc2898DeriveBytes&lt;/FONT&gt;&lt;FONT size=2&gt;(key, 32);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;&amp;nbsp; &lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;// Generate random Initialization Vector&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;tripledes.GenerateIV();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;// Derive a 16 Byte (128 Bit) Key out of the key string.&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;tripledes.Key = deriveBytes.GetBytes(16);&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;// Encryption&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;MemoryStream&lt;/FONT&gt; &lt;FONT size=2&gt;stream = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;MemoryStream&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;// Create CryptoStream object and pass Encryptor-ICryptoTransform object of&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // t&lt;/FONT&gt;ripledes&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;CryptoStream&lt;/FONT&gt; &lt;FONT size=2&gt;cryptoStream = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CryptoStream&lt;/FONT&gt; &lt;FONT size=2&gt;(&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;stream, tripledes.CreateEncryptor(), &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CryptoStreamMode&lt;/FONT&gt;&lt;FONT size=2&gt;.Write&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt; // Write the cleartext - unicode encoded to the stream&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] dataBytes =&amp;nbsp;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Encoding&lt;/FONT&gt;&lt;FONT size=2&gt;.Unicode.GetBytes(clearText);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;cryptoStream.Write(dataBytes, 0, dataBytes.Length);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;cryptoStream.Close();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;stream.Close();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] cipheredBytes = stream.ToArray();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Console&lt;/FONT&gt;&lt;FONT size=2&gt;.WriteLine(&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;.Format(&lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"Ciphered Bytes: {0}"&lt;/FONT&gt;&lt;FONT size=2&gt;,&amp;nbsp;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Convert&lt;/FONT&gt;&lt;FONT size=2&gt;.ToBase64String(cipheredBytes)));&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000 size=2&gt; // Decryption&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;stream = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;MemoryStream&lt;/FONT&gt;&lt;FONT size=2&gt;(cipheredBytes);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;cryptoStream = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CryptoStream&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;stream,tripledes.CreateDecryptor(), &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CryptoStreamMode&lt;/FONT&gt;&lt;FONT size=2&gt;.Read&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Byte&lt;/FONT&gt;&lt;FONT size=2&gt;[] decryptedBytes = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt; &lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;byte&lt;/FONT&gt;&lt;FONT size=2&gt;[cipheredBytes.Length];&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;cryptoStream.Read(decryptedBytes, 0, decryptedBytes.Length);&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;cryptoStream.Close();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;stream.Close();&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 size=2&gt;Console&lt;/FONT&gt;&lt;FONT size=2&gt;.WriteLine(&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;.Format(&lt;/FONT&gt; &lt;FONT color=#800000 size=2&gt;"Original Value ?"&lt;/FONT&gt;&lt;FONT size=2&gt;,&amp;nbsp;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, Verdana"&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Encoding&lt;/FONT&gt;&lt;FONT size=2&gt;.Unicode.GetString(decryptedBytes)));&lt;/FONT&gt; &lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;Did you spot the error? I'm sure you have.. First I was anxious that my demo would lead into a disaster :-) but unfortunately it was only a small typo!&lt;/P&gt;
&lt;P&gt;What this demo does is using a overlayed CryptoStream to write and read data to and from an underlying stream (in this demo a MemoryStream). You can use CryptoStreams on top of any other stream, to do encryption before writing data to the stream or decrypt it after reading it from the stream.&lt;BR&gt;Thereby you need to pass an &lt;I&gt;ICryptoTransform&lt;/I&gt; object to the CryptoStream, which is created by calling the methods &lt;I&gt;CreateEncryptor()&lt;/I&gt; and &lt;I&gt;CreateDecryptor&lt;/I&gt; of the corresponding algorithm. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;So.. I'm glad that everything went right and I'm looking forward to doing my next session..&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=816884" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/knom/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/knom/archive/tags/Work/default.aspx">Work</category><category domain="http://blogs.msdn.com/knom/archive/tags/Personal/default.aspx">Personal</category></item></channel></rss>