<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blafasel bloggt &#187; Programmierung</title>
	<atom:link href="http://www.martin-fredrich.de/tag/programmierung/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.martin-fredrich.de</link>
	<description>Wo die Macht geistlos ist, ist der Geist machtlos</description>
	<lastBuildDate>Mon, 09 Aug 2010 08:34:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>App_Offline.htm und &#8220;IE Friendly Error&#8221;</title>
		<link>http://www.martin-fredrich.de/2010/06/app_offline-htm-und-ie-friendly-error/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=app_offline-htm-und-ie-friendly-error</link>
		<comments>http://www.martin-fredrich.de/2010/06/app_offline-htm-und-ie-friendly-error/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 13:35:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=1009</guid>
		<description><![CDATA[Seit ASP 2.0 gibt es ein Feature um eine Webseite in den Wartungsmodus zu bringen. Und zwar die &#8220;App_Offline.htm&#8221;, die einen super bequemen Weg ermöglicht, eine ASP.NET-Anwendung in den Wartungsmodus zu schalten, während man Änderungen  macht und  wo sichergestellt sein muss, dass kein Benutzer Zugriff auf die Anwendung hat, bis alle Arbeiten erledigt sind. Die [...]]]></description>
			<content:encoded><![CDATA[<div class="is" style="width:149px;height:99px;"><a href="http://www.martin-fredrich.de/wp-content/uploads/2010/06/dotnet.jpg"><img class="alignleft size-full wp-image-1011" title="dotnet" src="http://www.martin-fredrich.de/wp-content/plugins/image-shadow/cache/480ff4af57baa78e201a9efa0629122d.jpg" alt="" width="139" height="89" /></a></div>
<p>Seit ASP 2.0 gibt es ein Feature um eine Webseite in den Wartungsmodus zu bringen. Und zwar die &#8220;App_Offline.htm&#8221;, die einen super bequemen Weg ermöglicht, eine ASP.NET-Anwendung in den Wartungsmodus zu schalten, während man Änderungen  macht und  wo sichergestellt sein muss, dass kein Benutzer Zugriff auf die Anwendung hat, bis alle Arbeiten erledigt sind.</p>
<p>Die app_offline.htm funktioniert auf eine ganz einfache Art und Weise. Die Datei wird in den Root der Anwendung gelegt und wenn der Interpreter die Datei sieht, führt er einen shut-down der Anwendung durch. Es wird jedoch kein Neustart gemacht du die Anwendung steht weiterhin für Anfragen zur Verfügung. Stattdessen wird der Inhalt der app_offline.htm an den requester gesendet. Wenn die Arbeiten an der Website beendet sind, kann man die Datei einfach löschen oder umbenennen und die Anwendung ist wieder online.</p>
<p>Auf eine Sache sei jedoch hingewiesen, die man im Auge zu behalten sollte: Ein Feature vom IE ab Version 5 sind die sogenannten  &#8221;Show Friendly Http Errors&#8221;. Dies kann unter Extras-&gt; Internetoptionen-&gt; Registerkarte &#8220;Erweitert&#8221; im IE konfiguriert werden und ist standardmäßig aktiviert. Wenn diese Option im Browser aktiviert ist, und ein Server gibt eine Seite mit weniger als Inhalt als 512 Byte zurück, dann wird im Browser nur die generische Fehlerseite angezeigt und nicht unsere Wartungsseite. Was daran jetzt freundlich sein soll verstehe ich nicht, aber sei’s drum.</p>
<p>Wir müssen also sicherstellen, dass der Inhalt unserer Wartungsseite mehr Inhalt als 512 Byte hat. Das geht zum Beispiel so:<br />
<code><br />
&lt;! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br />
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;<br />
&lt;head&gt;<br />
&lt;title&gt; Wartungsarbeiten &lt;/ title&gt;<br />
&lt;/ Head&gt;</code></p>
<p>&lt;body&gt;</p>
<p>&lt;h1&gt; Wir führen zur Zeit Wartungsarbeiten durch und bitten um Ihr Verständnis…&lt;/ h1&gt;<br />
&lt;h2&gt; Bitte versuchen Sie es später erneut&lt;/ h2&gt;</p>
<p>&lt;!- -</p>
<p>Jetzt zusätzlichen Inhalt versteckt hinzufügen, so dass der IE Friendly Error verhindert wird</p>
<p>&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&lt;h2&gt; Ich bin ein sinnloser Kommentar &#8230;&lt;/ h2&gt;<br />
&#8211;&gt;<br />
&lt;/ Body&gt;<br />
&lt;/ Html&gt;</p>
<p>Ja &#8211; es sieht ein wenig seltsam aus, aber es funktioniert. <img src='http://www.martin-fredrich.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2010/06/app_offline-htm-und-ie-friendly-error/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress plugin WP-SRVSTATUS</title>
		<link>http://www.martin-fredrich.de/2010/02/wordpress-plugin-wp-srvstatus/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-plugin-wp-srvstatus</link>
		<comments>http://www.martin-fredrich.de/2010/02/wordpress-plugin-wp-srvstatus/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 12:54:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Kostenlos]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=929</guid>
		<description><![CDATA[Die Idee für diese Plugin wurde geboren, nachdem ich zwei dedicated server für das Spiel Trackmania aufgesetzt habe. Damit der Status der Server auf der Homepage angezeigt werden kann, war ich auf der Suche nach einem geeigneten Plugin, es gab aber nichts, das ich dafür einsetzen konnte. Dann habe ich mir eben selbst ein Plugin [...]]]></description>
			<content:encoded><![CDATA[<p>Die Idee für diese Plugin wurde geboren, nachdem ich zwei dedicated server für das Spiel <a href="http://www.trackmania.com" target="_blank">Trackmania</a> aufgesetzt habe. Damit der Status der Server auf der Homepage angezeigt werden kann, war ich auf der Suche nach einem geeigneten Plugin, es gab aber nichts, das ich dafür einsetzen konnte.</p>
<p>Dann habe ich mir eben selbst ein Plugin geschrieben.</p>
<p><a href="http://www.martin-fredrich.de/wordpress/wordpress-plugin-wp-srvstatus/" target="_self"> Weiterlesen &#8230;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2010/02/wordpress-plugin-wp-srvstatus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wenn Progs sich unterhalten</title>
		<link>http://www.martin-fredrich.de/2009/11/wenn-progs-sich-unterhalten/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wenn-progs-sich-unterhalten</link>
		<comments>http://www.martin-fredrich.de/2009/11/wenn-progs-sich-unterhalten/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 08:12:47 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Hirnverdrehtes]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=800</guid>
		<description><![CDATA[Es folgt der Auszug eines Chat-Protokolls meiner Kollegen. Spinner Nerds (4:02 PM) jm: ICronJob job = new Lars(); job.Start(); (4:02 PM) nk: IBlowJob = new Lars() etc etc you get it (4:02 PM) jm: hehe (4:02 PM) jm: IGlasJob glas = new Lars() (4:03 PM) cs: glas.Knirsch(); (4:03 PM) jm: nene (4:03 PM) jm: glas.Piff(); [...]]]></description>
			<content:encoded><![CDATA[<p>Es folgt der Auszug eines Chat-Protokolls meiner Kollegen. <span style="text-decoration: line-through;">Spinner</span> Nerds <img src='http://www.martin-fredrich.de/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<pre>(4:02 PM) jm: ICronJob job = new Lars();
              job.Start();
(4:02 PM) nk: IBlowJob = new Lars() etc etc you get it
(4:02 PM) jm: hehe
(4:02 PM) jm: IGlasJob glas = new Lars()
(4:03 PM) cs: glas.Knirsch();
(4:03 PM) jm: nene
(4:03 PM) jm: glas.Piff();
(4:03 PM) cs: if (!glas.CanEject) { throw new NotarztException("..."); }
(4:03 PM) nk: glas.PlayNoise("pifff.mp3")
(4:05 PM) cs: Debug.Assert(typeof(IMalik).IsAssignableFrom(IGlasJob)));
(4:05 PM) nk:</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2009/11/wenn-progs-sich-unterhalten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Script controls may not be registered before PreRender</title>
		<link>http://www.martin-fredrich.de/2009/03/script-controls-may-not-be-registered-before-prerender/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=script-controls-may-not-be-registered-before-prerender</link>
		<comments>http://www.martin-fredrich.de/2009/03/script-controls-may-not-be-registered-before-prerender/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 12:52:04 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=604</guid>
		<description><![CDATA[Braindump: Wenn beim Aufruf einer ASP.NET-Seite die Fehlermeldung &#8220;Script controls may not be registered before PreRender&#8221; erscheint, dann sollte man schauen, ob sich in der OnPreRender-Methode ein base.OnPreRender(EventArgs e) befindet. protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); // ... } Ich hoffe, dass ich mit diesem Hinweis dem ein oder anderen Zeit beim debuggen erspare.]]></description>
			<content:encoded><![CDATA[<p>Braindump: Wenn beim Aufruf einer ASP.NET-Seite die Fehlermeldung &#8220;<em>Script controls may not be registered before PreRender</em>&#8221; erscheint, dann sollte man schauen, ob sich in der OnPreRender-Methode ein</p>
<pre>base.OnPreRender(EventArgs e)</pre>
<p>befindet.</p>
<pre>
<span style="color: #0000ff;">protected override void</span> OnPreRender(<span style="color: #33cccc;">EventArgs</span> e)
{
<span style="color: #0000ff;"> base</span>.OnPreRender(e);
<span style="color: #339966;"> // ...</span>
}</pre>
<p>Ich hoffe, dass ich mit diesem Hinweis dem ein oder anderen Zeit beim debuggen erspare.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2009/03/script-controls-may-not-be-registered-before-prerender/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ein Microsoft-Tool ergänzt herkömmliches Testen von Anwendungen.</title>
		<link>http://www.martin-fredrich.de/2005/11/ein-microsoft-tool-erganzt-herkommliches-testen-von-anwendungen/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=ein-microsoft-tool-erganzt-herkommliches-testen-von-anwendungen</link>
		<comments>http://www.martin-fredrich.de/2005/11/ein-microsoft-tool-erganzt-herkommliches-testen-von-anwendungen/#comments</comments>
		<pubDate>Wed, 30 Nov 2005 15:36:04 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=43</guid>
		<description><![CDATA[Microsoft hat einen &#8220;Application Verifier&#8221; zum Download bereitgestellt. Das Tool soll in unverwaltetem Code feine Fehler aufspüren können, die beim normalen Anwendungstest nur schwer erkennbar sind. Im Fokus stehen dabei Speicherfehler und Sicherheitslücken. Das Programm beobachtet, wie die Anwendung Objekte nutzt und mit Windows kommuniziert, also mit der Registry, dem Dateisystem und der Win32-API. Außerdem [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft  hat einen &#8220;<a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=bd02c19c-1250-433c-8c1b-2619bd93b3a2" target="_blank">Application Verifier</a>&#8221; zum Download bereitgestellt.<br />
Das Tool soll in unverwaltetem Code feine Fehler aufspüren können, die beim normalen Anwendungstest nur schwer erkennbar sind. Im Fokus stehen dabei Speicherfehler und Sicherheitslücken. Das Programm beobachtet, wie die Anwendung Objekte nutzt und mit Windows kommuniziert, also mit der Registry, dem Dateisystem und der Win32-API. Außerdem versucht sich der Application Verifier in einer Prognose, wie sich das Programm unter einem Benuzterkonto mit Mindestrechten verhält.<br />
Wenn ich Zeit habe, werde ich das Tool einmal testen und das Ergebnis hier posten.<br />
Via <a href="http://www.dotnetpro.de/news868.aspx" target="_blank">dotnetPro</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2005/11/ein-microsoft-tool-erganzt-herkommliches-testen-von-anwendungen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2005 &#8211; Express-Editions für ein Jahr Kostenfrei</title>
		<link>http://www.martin-fredrich.de/2005/11/visual-studio-2005-express-editions-fur-ein-jahr-kostenfrei/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=visual-studio-2005-express-editions-fur-ein-jahr-kostenfrei</link>
		<comments>http://www.martin-fredrich.de/2005/11/visual-studio-2005-express-editions-fur-ein-jahr-kostenfrei/#comments</comments>
		<pubDate>Wed, 09 Nov 2005 16:11:21 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Kostenlos]]></category>

		<guid isPermaLink="false">http://www.martin-fredrich.de/?p=27</guid>
		<description><![CDATA[Visual Studio 2005 ist der Nachfolger der Microsoft DotNet-Entwicklungsumgebung Visual Studio Dot Net 2003. Dazu passend gibt es abgespeckte Express Versionen von Visual Studio 2005, die bis zum 7.11.2006 kostenfrei benutzt werden können Zur Auswahl stehen: - Visual C# 2005 Express Edition Englisch - Visual Web Developer 2005 Express Edition Englisch - Visual Basic 2005 [...]]]></description>
			<content:encoded><![CDATA[<p>Visual Studio 2005 ist der Nachfolger der Microsoft DotNet-Entwicklungsumgebung Visual Studio Dot Net 2003.</p>
<p>Dazu passend gibt es abgespeckte Express Versionen von Visual Studio 2005, die bis zum 7.11.2006 kostenfrei benutzt werden können</p>
<p>Zur Auswahl stehen:<br />
- Visual C# 2005 Express Edition Englisch<br />
- Visual Web Developer 2005 Express Edition Englisch<br />
- Visual Basic 2005 Express Edition Englisch</p>
<p>Den Download per Installer gibt es unter<br />
<a href="http://msdn.microsoft.com/vstudio/express/" target="_blank">http://msdn.microsoft.com/vstudio/express/ </a></p>
<p>Datenvolumen:<br />
- ca 400 MB für DotNet 2.0 SDK und Runtime<br />
- jeweils 35-70 MB je Entwicklungsumgebung</p>
<p>Wer einen breitbandigen Internetzugang hat, kann sich<br />
auch das jeweils ca 450 Megabyte grosse CD-Image herunterladen</p>
<p><a href="http://msdn.microsoft.com/vstudio/express/support/install/" target="_blank">http://msdn.microsoft.com/vstudio/express/support/install/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.martin-fredrich.de/2005/11/visual-studio-2005-express-editions-fur-ein-jahr-kostenfrei/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
