<?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"
	>

<channel>
	<title>BlaBlubBlog</title>
	<atom:link href="http://blog.veloursnebel.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.veloursnebel.de</link>
	<description>All about ASP.NET, C# and more...</description>
	<pubDate>Mon, 14 Dec 2009 13:51:14 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Nur noch wenige Tage: Multi-Touch Netbook und andere coole Preise gewinnen mit Windows Azure</title>
		<link>http://blog.veloursnebel.de/2009/12/nur-noch-wenige-tage-multi-touch-netbook-und-andere-coole-preise-gewinnen-mit-windows-azure/</link>
		<comments>http://blog.veloursnebel.de/2009/12/nur-noch-wenige-tage-multi-touch-netbook-und-andere-coole-preise-gewinnen-mit-windows-azure/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 13:51:14 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Allgemein]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/?p=2091</guid>
		<description><![CDATA[Aufgabe beim Azure Now Gewinnspiel ist es, eine eigene Windows Azure Demo-Domäne einzurichten und dort eine Cloud Computing-Anwendung online zu stellen – nicht mehr. Das kann eine eigene Web-Anwendung sein oder ein Test-Projekt, das man bei Microsoft herunterladen kann. Dafür braucht man nicht länger als 15 Minuten und sichert sich hoffentlich noch ein schönes Weihnachtsgeschenk.
Alle [...]]]></description>
			<content:encoded><![CDATA[<p>Aufgabe beim <a href="http://go.microsoft.com/?linkid=9700955">Azure Now Gewinnspiel</a> ist es, eine eigene Windows Azure Demo-Domäne einzurichten und dort eine Cloud Computing-Anwendung online zu stellen – nicht mehr. Das kann eine eigene Web-Anwendung sein oder ein Test-Projekt, das man bei Microsoft herunterladen kann. Dafür braucht man nicht länger als 15 Minuten und sichert sich hoffentlich noch ein schönes Weihnachtsgeschenk.</p>
<p><strong>Alle Details, weiterführende Tutorials und Informationen zum Gewinnspiel findet Ihr hier: <a href="http://go.microsoft.com/?linkid=9700955">AzureNow Gewinnspiel – Jetzt teilnehmen!</a><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/12/nur-noch-wenige-tage-multi-touch-netbook-und-andere-coole-preise-gewinnen-mit-windows-azure/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Launch Event: Windows Azure Launch Day am 26.11.2009 in Stuttgart auf der Cloud Conf</title>
		<link>http://blog.veloursnebel.de/2009/11/launch-event-windows-azure-launch-day-am-26112009-in-stuttgart-auf-der-cloud-conf/</link>
		<comments>http://blog.veloursnebel.de/2009/11/launch-event-windows-azure-launch-day-am-26112009-in-stuttgart-auf-der-cloud-conf/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 10:57:31 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/?p=2089</guid>
		<description><![CDATA[Auf dem Windows Azure Platform Launch Day stellt Microsoft erstmalig die produktive Version von Windows Azure in Deutschland vor. Entwickler, IT-Dienstleister, Software-Hersteller und Unternehmen lernen hier, wie man die Microsoft Online Services (Sharepoint, Exchange, Office Web Applications) und die Windows Azure Platform einsetzen kann und wie man für Windows Azure Platform Anwendungen entwickelt. Auf diesem [...]]]></description>
			<content:encoded><![CDATA[<p>Auf dem <strong>Windows Azure Platform Launch Day</strong> stellt Microsoft <strong>erstmalig </strong>die produktive Version von Windows Azure in Deutschland vor. Entwickler, IT-Dienstleister, Software-Hersteller und Unternehmen lernen hier, wie man die Microsoft Online Services (Sharepoint, Exchange, Office Web Applications) und die Windows Azure Platform einsetzen kann und wie man für Windows Azure Platform Anwendungen entwickelt. Auf diesem exklusiven Premiereevent erfahrt Ihr alles Wichtige über die Cloud Angebote von Microsoft und wie Unternehmen davon profitieren können. <strong>Jeder Teilnehmer erhält auch das Microsoft-Press Buch &#8220;Cloud Computing mit der Windows Azure Platform&#8221;.</strong></p>
<p>Anmeldung und weitere Infos findet Ihr unter: <a href="http://go.microsoft.com/?linkid=9695893">http://go.microsoft.com/?linkid=9695893</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/11/launch-event-windows-azure-launch-day-am-26112009-in-stuttgart-auf-der-cloud-conf/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Studio Einstellungen zur&#252;cksetzen</title>
		<link>http://blog.veloursnebel.de/2009/08/visual-studio-zurcksetzen/</link>
		<comments>http://blog.veloursnebel.de/2009/08/visual-studio-zurcksetzen/#comments</comments>
		<pubDate>Tue, 11 Aug 2009 09:54:27 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/08/visual-studio-zurcksetzen/</guid>
		<description><![CDATA[Visual Studio bietet eine ganze Menge Kommandozeilen Parameter, um bestimmte Funktionen zu beinflussen oder abzustellen. Folgende ein paar wichtige Parameter, die ich benötigt habe ich ein Fehler beim Start einzugrenzen und letztendlich zu beheben:
/log – Protokolliert den Start von Visual Studio   /ResetSettings – Setzt alle Einstellungen zurück
Damit alle Parameter eingesehen werden können, muss [...]]]></description>
			<content:encoded><![CDATA[<p>Visual Studio bietet eine ganze Menge Kommandozeilen Parameter, um bestimmte Funktionen zu beinflussen oder abzustellen. Folgende ein paar wichtige Parameter, die ich benötigt habe ich ein Fehler beim Start einzugrenzen und letztendlich zu beheben:</p>
<p>/log – Protokolliert den Start von Visual Studio   <br />/ResetSettings – Setzt alle Einstellungen zurück</p>
<p>Damit alle Parameter eingesehen werden können, muss die devenv.exe mit dem Kommando /? gestartet werden. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/08/visual-studio-zurcksetzen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Meine Top 3 Entwickler-Tools</title>
		<link>http://blog.veloursnebel.de/2009/05/meine-top-3-entwickler-tools/</link>
		<comments>http://blog.veloursnebel.de/2009/05/meine-top-3-entwickler-tools/#comments</comments>
		<pubDate>Sat, 23 May 2009 20:58:30 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/05/meine-top-3-entwickler-tools/</guid>
		<description><![CDATA[Ich habe zwar schon eine Xbox, allerdings ist die schon ein wenig in die Jahre gekommen. Au&#223;erdem finde ich das Thema dieser Blog-Parade sehr interessant. Hier nun meine Top 3 Entwickler-Tools
1) Jetbrains ReSharper    ReSharper ist f&#252;r mich DAS Visual Studio Add-In, welches in nun seit mehreren Jahren benutze und eigentlich nicht mehr [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe zwar schon eine Xbox, allerdings ist die schon ein wenig in die Jahre gekommen. Au&#223;erdem finde ich das Thema <a href="http://blogs.msdn.com/softwarehersteller/archive/2009/05/06/msdn-blog-parade-was-sind-ihre-lieblings-entwickler-tools-mitmachen-und-gewinnen.aspx">dieser</a> Blog-Parade sehr interessant. Hier nun meine Top 3 Entwickler-Tools</p>
<p>1) <a href="http://www.jetbrains.com/resharper/">Jetbrains ReSharper</a>    <br />ReSharper ist f&#252;r mich DAS Visual Studio Add-In, welches in nun seit mehreren Jahren benutze und eigentlich nicht mehr ohne kann.     </p>
<p>2) <a href="http://www.sliver.com/dotnet/snippetcompiler/">Snippet-Compiler</a>    <br />Der Snippet-Compiler befindet sich ebenfalls seit mehreren Jahren auf meiner Festplatte. H&#228;ufig muss ich ein St&#252;ck Code testen und m&#246;chte daf&#252;r nicht extra Visual Studio starten m&#252;ssen. Snippet-Compiler besetzt genau diese L&#252;cke. </p>
<p>3) <a href="http://www.codesmithtools.com/">CodeSmith</a>    <br />Mit Hilfe von CodeSmith ist es m&#246;glich Code zu generieren, allerdings k&#246;nnen die Templates selbst mit Logik gef&#252;llt werden.&#160; Damit hat mir CodeSmith schon viel, viel Arbeit erspart. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/05/meine-top-3-entwickler-tools/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Studio 2008: A selected drive is no longer valid</title>
		<link>http://blog.veloursnebel.de/2009/04/visual-studio-2008-a-selected-drive-is-no-longer-valid/</link>
		<comments>http://blog.veloursnebel.de/2009/04/visual-studio-2008-a-selected-drive-is-no-longer-valid/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 07:17:41 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/04/visual-studio-2008-a-selected-drive-is-no-longer-valid/</guid>
		<description><![CDATA[Für ein neues Projekt wollte ich heute Morgen die C++ Komponenten von Visual Studio 2008 Prof. nachinstallieren. Nach dem Aufrufen des Setups wurde jedoch folgende Fehlermeldung angezeigt:    
A selected drive is no longer valid. Please review your installation path settings before continuing with setup.
Die Lösung habe ich in einem Thread im MSDN [...]]]></description>
			<content:encoded><![CDATA[<p>Für ein neues Projekt wollte ich heute Morgen die C++ Komponenten von Visual Studio 2008 Prof. nachinstallieren. Nach dem Aufrufen des Setups wurde jedoch folgende Fehlermeldung angezeigt:    </p>
<p><em>A selected drive is no longer valid. Please review your installation path settings before continuing with setup.</em></p>
<p>Die Lösung habe ich in <a href="http://social.msdn.microsoft.com/Forums/de-DE/vssetup/thread/2f3d0378-3175-49ae-acb7-012594a1bf3c">einem Thread</a> im MSDN Forum gefunden. Nach der Deinstallation des SP1 für Visual Studio konnte die Nachinstallation durchgeführt und im Anschluss das SP1 erneut installiert werden. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/04/visual-studio-2008-a-selected-drive-is-no-longer-valid/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Formulare mit ToolTip-Hilfen</title>
		<link>http://blog.veloursnebel.de/2009/04/formulare-mit-tooltip-hilfen/</link>
		<comments>http://blog.veloursnebel.de/2009/04/formulare-mit-tooltip-hilfen/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 18:13:44 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/04/formulare-mit-tooltip-hilfen/</guid>
		<description><![CDATA[Formulare sind etwas ganz Grunds&#228;tzliches jeder Web-Anwendung. Zu jedem guten Formular geh&#246;ren Hilfe und Erkl&#228;rungstexte, damit der Benutzer ganau wei&#223; was er einzugeben hat. Meiner Auffassung nach sollte die Aufkl&#228;rung im Vorfeld durchgef&#252;hrt werden und nicht erst durch die Ausgabe einer entsprechenden Fehlermeldung - jedoch w&#228;re ein langer Erkl&#228;rungstext f&#252;r jedes Feld zu umfangreich, und [...]]]></description>
			<content:encoded><![CDATA[<p>Formulare sind etwas ganz Grunds&#228;tzliches jeder Web-Anwendung. Zu jedem guten Formular geh&#246;ren Hilfe und Erkl&#228;rungstexte, damit der Benutzer ganau wei&#223; was er einzugeben hat. Meiner Auffassung nach sollte die Aufkl&#228;rung im Vorfeld durchgef&#252;hrt werden und nicht erst durch die Ausgabe einer entsprechenden Fehlermeldung - jedoch w&#228;re ein langer Erkl&#228;rungstext f&#252;r jedes Feld zu umfangreich, und w&#252;rde eher abschreckend wirken. </p>
<p>Die L&#246;sung sind also ToolTips, die nach belieben des Benutzers eingeblendet werden. H&#228;ufig werden die Hilfetexte nicht vom Entwickler, sondern von anderen Kr&#228;ften erstellt. Somit sollten die Hilfetexte leicht einzugeben ein und ohne Problem ver&#228;ndert werden k&#246;nnen. </p>
<p>Die Verarbeitung und Anzeige der ToolTips &#252;berlasse ich der jQuery JavaScript Library mit der Abwandlung jTip, was bedeutet das diese Referenzen zun&#228;chst eingebunden werden m&#252;ssen. Wichtig ist hierbei die Reihenfolge, die strikt eingehalten werden muss. Weiterhin gibt es eine CSS Datei, die sich um die n&#246;tigen Formatierungen k&#252;mmert. </p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #0000ff">&lt;</span><span style="color: #800000">head</span> <span style="color: #ff0000">runat</span><span style="color: #0000ff">=&quot;server&quot;</span><span style="color: #0000ff">&gt;</span>
    <span style="color: #0000ff">&lt;</span><span style="color: #800000">link</span> <span style="color: #ff0000">href</span><span style="color: #0000ff">=&quot;Stylesheet1.css&quot;</span> <span style="color: #ff0000">rel</span><span style="color: #0000ff">=&quot;stylesheet&quot;</span> <span style="color: #ff0000">type</span><span style="color: #0000ff">=&quot;text/css&quot;</span> <span style="color: #0000ff">/&gt;</span>
    <span style="color: #0000ff">&lt;</span><span style="color: #800000">script</span> <span style="color: #ff0000">src</span><span style="color: #0000ff">=&quot;jquery.js&quot;</span> <span style="color: #ff0000">type</span><span style="color: #0000ff">=&quot;text/javascript&quot;</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">script</span><span style="color: #0000ff">&gt;</span>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">&#160;</pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">   &lt;script src=<span style="color: #006080">&quot;jtip.js&quot;</span> type=<span style="color: #006080">&quot;text/javascript&quot;</span>&gt;</pre>
<p><span style="color: #0000ff">&lt;/</span><span style="color: #800000">script</span><span style="color: #0000ff">&gt;</span><br />
    <span style="color: #0000ff">&lt;</span><span style="color: #800000">title</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">title</span><span style="color: #0000ff">&gt;</span><br />
<span style="color: #0000ff">&lt;/</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;</span></pre>
</div>
<p>Die Hilfetexte selbst werden &#252;ber einen generischen HttpHandler eingebunden, welcher wiederum den Zugriff auf eine globale Resource-Datei nutzt. Die Unterscheidung der Texte erfolgt &#252;ber die Angabe eines Schl&#252;ssels, welcher in der gleichen Form in der Resource-Datei zu finden ist. </p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #0000ff">using</span> System;
<span style="color: #0000ff">using</span> System.Collections.Generic;
<span style="color: #0000ff">using</span> System.Linq;
<span style="color: #0000ff">using</span> System.Web;
<span style="color: #0000ff">using</span> System.Web.Services;

<span style="color: #0000ff">namespace</span> FormularToolTip
{
    [WebService(Namespace = <span style="color: #006080">&quot;http://tempuri.org/&quot;</span>)]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    <span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span> HelpHandler : IHttpHandler
    {

        <span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> ProcessRequest(HttpContext context)
        {
            <span style="color: #0000ff">string</span> key = context.Request.QueryString[<span style="color: #006080">&quot;key&quot;</span>];
            context.Response.Write(String.Format(<span style="color: #006080">&quot;&lt;p&gt;{0}&lt;/p&gt;&quot;</span>,
                HttpContext.GetGlobalResourceObject(<span style="color: #006080">&quot;Help&quot;</span>, key)));
        }

        <span style="color: #0000ff">public</span> <span style="color: #0000ff">bool</span> IsReusable
        {
            get
            {
                <span style="color: #0000ff">return</span> <span style="color: #0000ff">false</span>;
            }
        }
    }
}</pre>
</div>
<p>Damit der jQuery Code die Arbeit aufnehmen kann, ist es n&#246;tig den Link zur Hilfe mit einer entsprechenden Klasse zu versehen. &#220;ber das Attribut <em>Name</em>, wird die &#220;berschrift abgegeben.</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">Benutzername: <span style="color: #0000ff">&lt;</span><span style="color: #800000">asp:textbox</span> <span style="color: #ff0000">ID</span><span style="color: #0000ff">=&quot;Textbox1&quot;</span> <span style="color: #ff0000">runat</span><span style="color: #0000ff">=&quot;server&quot;</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">asp:textbox</span><span style="color: #0000ff">&gt;</span>
<span style="color: #0000ff">&lt;</span><span style="color: #800000">a</span> <span style="color: #ff0000">href</span><span style="color: #0000ff">=&quot;HelpHandler.ashx?key=Help1&quot;</span> <span style="color: #ff0000">name</span><span style="color: #0000ff">=&quot;Benutzername&quot;</span> <span style="color: #ff0000">id</span><span style="color: #0000ff">=&quot;Help1&quot;</span> <span style="color: #ff0000">class</span><span style="color: #0000ff">=&quot;jTip&quot;</span><span style="color: #0000ff">&gt;</span>?<span style="color: #0000ff">&lt;/</span><span style="color: #800000">a</span><span style="color: #0000ff">&gt;</span></pre>
</div>
<p>Dieser Beispielcode zeigt den Link als Fragezeichen. Zus&#228;tzlich wird der Mauszeiger mit Hilfe der CSS Datei ver&#228;ndert, sobald er sich &#252;ber dem Fragezeichen befindet, allerdings nur sofern der Browser dies unterst&#252;tzt. </p>
<p>Das Ergebnis ist die Anzeige eines einfachen ToolTips, welcher dazu noch leicht einzugeben und zu warten ist. Leider ist auf dem Screenshot der Mauszeiger nicht zu sehen. </p>
<p><img style="border-bottom: 0px; border-left: 0px; border-top: 0px; border-right: 0px" border="0" alt="image" src="http://blog.veloursnebel.de/wp-content/uploads/2009/04/image.png" width="514" height="92" />&#160;&#160;&#160; <br />Das Beispielprojekt gibt es <a href="http://www.veloursnebel.de/code/FormularToolTip.zip">hier</a> zum Download. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/04/formulare-mit-tooltip-hilfen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Office (VSTO) Community Day in Wien</title>
		<link>http://blog.veloursnebel.de/2009/04/office-vsto-community-day-in-wien/</link>
		<comments>http://blog.veloursnebel.de/2009/04/office-vsto-community-day-in-wien/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 16:25:52 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/?p=2081</guid>
		<description><![CDATA[Mein Freund Lars Keller und Mario Meir-Huber veranstalten am 08.05.2009 in Wien einen Community Day rund um VSTO, also die Microsoft Office Entwicklung. Die Themenschwerpunkte des Tages sind: 
- Einf&#252;hrung in die VSTO   - OpenXML: Das neue Office Format    - VSTO Deployment    - Sharepoint Workflows und Integration [...]]]></description>
			<content:encoded><![CDATA[<p>Mein Freund Lars Keller und Mario Meir-Huber veranstalten am 08.05.2009 in Wien einen Community Day rund um VSTO, also die Microsoft Office Entwicklung. Die Themenschwerpunkte des Tages sind: </p>
<p>- Einf&#252;hrung in die VSTO   <br />- OpenXML: Das neue Office Format    <br />- VSTO Deployment    <br />- Sharepoint Workflows und Integration    <br />- Interaktionen in der &quot;Office-Welt&quot; mit .NET    <br />- Office plus Services</p>
<p>Mehr Informationen gibt es im <a href="http://blog.lars-keller.net/2009/03/29/Office+VSTO+Community+Day+In+Wien.aspx">Blog von Lars</a>, oder unter     <br /><a title="http://www.vsto-taskforce.de/wikis/ocd/hauptseite.aspx" href="http://www.vsto-taskforce.de/wikis/ocd/hauptseite.aspx">http://www.vsto-taskforce.de/wikis/ocd/hauptseite.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/04/office-vsto-community-day-in-wien/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hash eines Passworts erstellen</title>
		<link>http://blog.veloursnebel.de/2009/03/hash-eines-passworts-erstellen/</link>
		<comments>http://blog.veloursnebel.de/2009/03/hash-eines-passworts-erstellen/#comments</comments>
		<pubDate>Wed, 25 Mar 2009 19:29:57 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[CSharp]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/03/hash-eines-passworts-erstellen/</guid>
		<description><![CDATA[Kaum eine Anwendung kommt heute noch ohne Passwort aus. Aufgrund dieser Tatsache verwenden Benutzer h&#228;ufig einfache Passw&#246;rter, oder schlimmer noch - f&#252;r jede Anwendung das gleiche Passwort. Umso wichtiger ist es das die Entwickler der Anwendung die Passw&#246;rter der Benutzer sch&#252;tzen, und das so gut wie m&#246;glich.    
Damit Angreifer bei einer Komprimitierung [...]]]></description>
			<content:encoded><![CDATA[<p>Kaum eine Anwendung kommt heute noch ohne Passwort aus. Aufgrund dieser Tatsache verwenden Benutzer h&#228;ufig einfache Passw&#246;rter, oder schlimmer noch - f&#252;r jede Anwendung das gleiche Passwort. Umso wichtiger ist es das die Entwickler der Anwendung die Passw&#246;rter der Benutzer sch&#252;tzen, und das so gut wie m&#246;glich.    </p>
<p>Damit Angreifer bei einer Komprimitierung der Datenbank nicht alle verwendeten Passw&#246;rter im Klartext vor sich haben, empfiehlt es sich ein Hash des Passworts zu erstellen und diesen in Verbindung mit einem Zufallswert (genannt Salt) in der Datenbank zu speichern. </p>
<p>Seit der Version 2.0 des .NET Frameworks steht die Klasse Rfc2898DerivedBytes zur Verf&#252;gung, welche auf dem Passwort-Hashing-Standard RFC2898 basiert. </p>
<p>Zun&#228;chst muss der Zufallswert (Salt) erstellt werden. In diesem Beispiel wird eine 16 byte lange Zufallszahl erstellt. Denkbar w&#228;re jedoch auch eine Verwendung des Benutzernames, oder eines anderen eindeutigen Wertes. </p>
<div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &#39;Courier New&#39;, courier, monospace; background-color: #f4f4f4">
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"><span style="color: #0000ff">byte</span>[] GetSalt(<span style="color: #0000ff">int</span> length)
{
    RNGCryptoServiceProvider rng = <span style="color: #0000ff">new</span> RNGCryptoServiceProvider();
    <span style="color: #0000ff">byte</span>[] buff = <span style="color: #0000ff">new</span> <span style="color: #0000ff">byte</span>[length];
    rng.GetBytes(buff);

    <span style="color: #0000ff">return</span> buff;
}</pre>
</div>
<p>In Verbindung mit dem Salt kann nun der Passwort Hash erstellt werden. </p>
<div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &#39;Courier New&#39;, courier, monospace; background-color: #f4f4f4">
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"><span style="color: #0000ff">byte</span>[] GetHashPassword(<span style="color: #0000ff">string</span> password, <span style="color: #0000ff">byte</span>[] salt)
{
    Rfc2898DeriveBytes rfc = <span style="color: #0000ff">new</span> Rfc2898DeriveBytes(password, salt, 10000);
    <span style="color: #0000ff">return</span> rfc.GetBytes(16);
}</pre>
</div>
<p>Die zur&#252;ckgegeben Werte m&#252;ssen, bevor Sie in der Datenbank gespeichert werden k&#246;nnen, in einen Base64 String umgewandelt werden. </p>
<p>Bei der Anmeldung eines Users wird das eingegebene Passwort mit dem in der Datenbank gespeicherten Salt in einen Hash umgewandelt und mit dem Hash in der Datenbank verglichen. Bei Erfolg kann die Anmeldung fortgesetzt werden. </p>
<p>Das Beispielprojekt als Konsolenanwendung kann <a href="http://www.veloursnebel.de/code/PasswordHash.zip">hier</a> runtergeladen werden. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/03/hash-eines-passworts-erstellen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Einsatz auf der Cebit 2009</title>
		<link>http://blog.veloursnebel.de/2009/03/einsatz-auf-der-cebit-2009/</link>
		<comments>http://blog.veloursnebel.de/2009/03/einsatz-auf-der-cebit-2009/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 19:04:00 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Community]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/03/einsatz-auf-der-cebit-2009/</guid>
		<description><![CDATA[ 
In diesem Jahr habe die die Gelegenheit bekommen vom 03.03 - 05.03 am Stand von Microsoft t&#228;tig zu sein. Zu finden bin ich am Community Stand in Halle 4 Stand A26. Ich freue mich auf viele bekannte Gesichter, viele Fragen und interessante Gespr&#228;che zum Thema .NET, Windows Vista und    Windows 7. [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="240" alt="cebit" src="http://blog.veloursnebel.de/wp-content/uploads/2009/03/cebit.png" width="211" border="0" /> </p>
<p>In diesem Jahr habe die die Gelegenheit bekommen vom 03.03 - 05.03 am Stand von Microsoft t&#228;tig zu sein. Zu finden bin ich am Community Stand in Halle 4 Stand A26. Ich freue mich auf viele bekannte Gesichter, viele Fragen und interessante Gespr&#228;che zum Thema .NET, Windows Vista und    <br />Windows 7. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/03/einsatz-auf-der-cebit-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Studio Team System Information Days</title>
		<link>http://blog.veloursnebel.de/2009/02/visual-studio-team-system-information-days/</link>
		<comments>http://blog.veloursnebel.de/2009/02/visual-studio-team-system-information-days/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 13:19:38 +0000</pubDate>
		<dc:creator>Kai Gloth</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://blog.veloursnebel.de/2009/02/visual-studio-team-system-information-days/</guid>
		<description><![CDATA[Auch dieses Jahr haben Interessierte wieder die M&#246;glichkeit, sich bei der regelm&#228;&#223;ig stattfindenden Workshop-Reihe &#34;Visual Studio Team System Information Days&#34; Einblick in die unterschiedlichen Rollen eines Entwicklungsprozesses und deren koordinierte Zusammenarbeit zu verschaffen.    
Als ganzheitliches Toolset &#34;aus eigener Hand&#34; unterst&#252;tzt Visual Studio Team System den gesamten Prozess des Application Lifecycle Management (ALM) [...]]]></description>
			<content:encoded><![CDATA[<p>Auch dieses Jahr haben Interessierte wieder die M&#246;glichkeit, sich bei der regelm&#228;&#223;ig stattfindenden Workshop-Reihe &quot;<a href="http://go.microsoft.com/?linkid=9649599">Visual Studio Team System Information Days</a>&quot; Einblick in die unterschiedlichen Rollen eines Entwicklungsprozesses und deren koordinierte Zusammenarbeit zu verschaffen.    </p>
<p>Als ganzheitliches Toolset &quot;aus eigener Hand&quot; unterst&#252;tzt Visual Studio Team System den gesamten Prozess des Application Lifecycle Management (ALM) von Anforderungsmanagement &#252;ber Design, Entwicklung und Test bis hin zum Betrieb der Software.    </p>
<p>Noch bis Ende Juni 2009 werden die kostenpflichtigen ganzt&#228;gigen Workshops in verschiedenen deutschen St&#228;dten (in den Niederlassungen der Microsoft Deutschland GmbH) durchgef&#252;hrt. Sie richten sich in erster Linie an Leiter der Anwendungsentwicklung, Projektleiter, Senior Developer sowie technische Entscheider aus Unternehmen mit Entwicklungsteams.    </p>
<p><strong>F&#252;r Community-Mitglieder entf&#228;llt die Teilnahmegeb&#252;hr von 49,- EUR. Wie erfahrt Ihr auf der Veranstaltungswebseite:      <br /></strong><a href="http://go.microsoft.com/?linkid=9649599">http://go.microsoft.com/?linkid=9649599</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.veloursnebel.de/2009/02/visual-studio-team-system-information-days/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
