<?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>Software-Wahnsinn &#187; Software-Wahnsinn</title>
	<atom:link href="http://www.software-wahnsinn.de/category/software-wahnsinn/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.software-wahnsinn.de</link>
	<description>Neues vom alltäglichen Wahnsinn (nicht nur) der Software-Technik</description>
	<lastBuildDate>Wed, 01 Dec 2010 19:00:29 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>Das b&#246;se e</title>
		<link>http://www.software-wahnsinn.de/231-das-boese-e/</link>
		<comments>http://www.software-wahnsinn.de/231-das-boese-e/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 06:04:11 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[Alltäglicher Wahnsinn]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Software-Wahnsinn]]></category>
		<category><![CDATA[estimated e]]></category>
		<category><![CDATA[estimated symbol]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html-entität]]></category>
		<category><![CDATA[iso-8859-1]]></category>
		<category><![CDATA[iso-8859-15]]></category>
		<category><![CDATA[live http-headers]]></category>
		<category><![CDATA[mb_convert_string]]></category>
		<category><![CDATA[unicode]]></category>
		<category><![CDATA[utf-8]]></category>
		<category><![CDATA[windows-1252]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/?p=231</guid>
		<description><![CDATA[Gestern hat mich ein ganz besonderer Buchstabe in den Wahnsinn getrieben: Das ?! Nicht das jemand glaubt, e = ?. Denn wenn man genau hinsieht, dann ist e ? ? Es handelt sich n&#228;mlich hierbei um das sog. &#8220;estimated e&#8221; auf Verpackungen. Dieses ist ein Sonderzeichen, welches Windows, Mac und Linux eigentlich unbekannt ist und [...]]]></description>
			<content:encoded><![CDATA[<p>Gestern hat mich ein ganz besonderer Buchstabe in den Wahnsinn getrieben: Das ?! Nicht das jemand glaubt, e = ?. Denn wenn man genau hinsieht, dann ist</p>
<p style="padding-left: 30px;font-size:30px;">e ? ?</p>
<p>Es handelt sich n&#228;mlich hierbei um das sog. <a href="http://de.wikipedia.org/wiki/Europ%C3%A4ische_Fertigpackungsrichtlinie" target="_blank">&#8220;estimated e&#8221; auf Verpackungen</a>. Dieses ist ein Sonderzeichen, welches Windows, Mac und Linux eigentlich unbekannt ist und sich in Word und HTML aber herbei zaubern l&#228;sst. Des R&#228;tsels L&#246;sung lautet <a href="http://de.wikipedia.org/wiki/Unicode" target="_blank">Unicode</a>: Hier hat das Estimated Symbol die Position 8494 bzw. U+212e und dementsprechend die <a href="http://de.wikipedia.org/wiki/HTML-Entit%C3%A4t" target="_blank">HTML-Entit&#228;t</a> &amp;#8494; bzw. &amp;#x212e;.</p>
<p>Wenn jetzt dieses &#8220;magische e&#8221; in einem HTML-Formular eingegeben wird und das Formular in PHP weiterverarbeitet wird, hat man ein Problem. Denn wie ich nach langem Suchen herausfinden konnte, wird dieses magische e bereits vom Browser in die numerische HTML-Entit&#228;t umgewandelt, bevor der Request an den Server &#252;bermittelt wird. Herausfinden konnte ich das im &#220;brigen mit der genialen Firefox-Erweiterung &#8220;<a href="https://addons.mozilla.org/de/firefox/addon/3829" target="_blank">Live HTTP-Headers</a>&#8220;.</p>
<p>Zur&#252;ck zu meinem Problem: Es wurde also in einem HTML-Formular dieses b&#246;se ? eingegeben und diese Eingabe sollte sp&#228;ter in einer E-Mail-Benachrichtigung ihren Platz finden. Da bereits der Browser die Umwandlung in eine HTML-Entit&#228;t durchf&#252;hrte, musste diese nun PHP-seitig wieder r&#252;ckg&#228;ngig gemacht werden. Leichter gesagt als getan. Denn eine String-Konvertierung mittels <a href="http://www.php.net/manual/de/function.mb-convert-encoding.php" target="_blank">mb_convert_encoding</a> f&#252;hrte nicht zum Ziel. Egal, ob ich nach <a href="http://de.wikipedia.org/wiki/ISO-8859-1" target="_blank">ISO-8859-1</a>, <a href="http://de.wikipedia.org/wiki/ISO-8859-15" target="_blank">ISO-8859-15</a>, <a href="http://de.wikipedia.org/wiki/Windows-1252#Windows-1252" target="_blank">Windows-1252</a> oder auch <a href="http://de.wikipedia.org/wiki/Utf-8" target="_blank">UTF-8</a> konvertierte, das Ergebnis blieb das gleiche: Aus ? wurde ?</p>
<p>Nach R&#252;cksprache mit dem Kunden habe ich dann eines gemacht:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$msg</span> <span style="color: #339933;">=</span> <span style="color: #990000;">str_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;amp;#8494;'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span><span style="color: #000088;">$msg</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Da das ? kaum von einem normalen e zu unterscheiden ist, steht zuk&#252;nftig ein normales e in den Benachrichtigungs-Mails geschrieben.</p>
<p>Die letztendliche Implementierung hat nicht lange gedauert. Die Suche, warum sich das ? so seltsam verh&#228;lt, allerdings &#252;ber zwei Stunden <img src='http://www.software-wahnsinn.de/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/231-das-boese-e/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pimp my Firefox 3.5</title>
		<link>http://www.software-wahnsinn.de/191-pimp-my-firefox-3-5/</link>
		<comments>http://www.software-wahnsinn.de/191-pimp-my-firefox-3-5/#comments</comments>
		<pubDate>Wed, 22 Jul 2009 17:53:58 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[Software-Wahnsinn]]></category>
		<category><![CDATA[3.5.x]]></category>
		<category><![CDATA[about:config]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[leerer Tab]]></category>
		<category><![CDATA[letzter Tab]]></category>
		<category><![CDATA[userChrome.css]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/?p=191</guid>
		<description><![CDATA[Seit ein paar Tagen habe ich nun auch den Firefox auf Version 3.5 (genauer 3.5.1) aktualisiert, nachdem auch endlich das Plugin Firebug f&#252;r den Firefox &#62; 3.5 verf&#252;gbar war. Ich bin mit der neuen Version auch soweit zufrieden, au&#223;er dass sich Firefox immer noch gnadenlos mit Speicher aufpumpt und ich ihn gelegentlich einfach mal neu [...]]]></description>
			<content:encoded><![CDATA[<p>Seit ein paar Tagen habe ich nun auch den Firefox auf Version 3.5 (genauer 3.5.1) aktualisiert, nachdem auch endlich das Plugin <a title="PlugIn-Homepage" href="https://addons.mozilla.org/de/firefox/addon/1843" target="_blank">Firebug</a> f&#252;r den Firefox &gt; 3.5 verf&#252;gbar war. Ich bin mit der neuen Version auch soweit zufrieden, au&#223;er dass sich Firefox immer noch gnadenlos mit Speicher aufpumpt und ich ihn gelegentlich einfach mal neu starten muss (das geht mit dem Plugin <a title="PlugIn-Homepage" href="https://addons.mozilla.org/de/firefox/addon/2098" target="_blank">Update Notifier</a> recht einfach).</p>
<p>Eine Sache st&#246;rte mich allerdings wirklich: Im Firefox 3.0.x war es so, dass auch der letzte Tab immer als Tab angezeigt wurde (Einstellungen =&gt; Tabs =&gt; &#8220;Tab-Leiste immer anzeigen&#8221; angew&#228;hlt). Zus&#228;tzlich konnte ich den letzten Tab mittels eines kleinen Icons schlie&#223;en, ohne dass sich der Firefox beendet, und es wurde anstelle des geschlossenen Tabs ein leerer Tab angezeigt. Ich fand das ganz praktisch, denn so konnte ich den Firefox anweisen, dass er nach jedem Start die zuletzt ge&#246;ffneten Tabs wieder &#246;ffnet &#8211; eben auch den leeren Tab. Und genau dieses Verhalten vermisste ich schmerzlich in der neuen Version.</p>
<p>Die L&#246;sung fand ich nach einigem Suchen im Netz. Die L&#246;sung besteht allerdings aus zwei Teil-L&#246;sungen, da es anscheinend auch zwei verschiedene Probleme sind, die es zu l&#246;sen gilt:<br />
<span id="more-191"></span></p>
<ol>
<li>Bei Schlie&#223;en des letzten Tabs, soll der Firefox sich nicht mehr schlie&#223;en.
<ol>
<li> Dazu gibt man in der Adresszeile <code>about:config ein</code> und best&#228;tigt die evtl. angezeigte Warnung, um an die erweiterten Firefox-Einstellungen zu gelangen.</li>
<li>Man f&#252;ttert die Filter-Zeile mit<br />
<code>browser.tabs.closeWindowWithLastTab</code></li>
<li>Als Standard ist der Wert<br />
<code>browser.tabs.closeWindowWithLastTab</code><br />
auf <code>true</code> eingestellt. Den Wert &#228;ndert man auf <code>false</code>. Dazu reicht ein einfacher Doppel-Klick auf den Wert.</li>
</ol>
</li>
<li>Damit der letzte Tab immer den &#8220;Schlie&#223;en-Button&#8221; anzeigt, muss man sich eine eigene <code>userChrome.css</code> basteln.
<ol>
<li>Im Profil-Verzeichnis (also z.B. <code>C:\Dokumente und Einstellungen\WINDOWSBENUTERNAME\Anwendungsdaten\Mozilla\Firefox\Profiles\abcdefgh.default\</code> unter Windows XP) gibt es einen Unterordner chrome</li>
<li>In diesem Ordner gibt es eine Beispiel-Datei namens <code>userChrome-example.css</code></li>
<li>Diese Datei kopiert man in das gleiche Verzeichnis und benennt die Kopie <code>userChrome.css</code></li>
<li>Am Ende dieser Datei f&#252;gt man die folgende CSS-Anweisung hinzu:

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #6666ff;">.tab-close-button</span> <span style="color: #00AA00;">&#123;</span><span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> -moz-box !important<span style="color: #00AA00;">;</span><span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Bei mir steht da der folgende Sermon (inkl. Kommentar, damit ich auch noch in zwei Monaten wei&#223;, warum ich den Eintrag gemacht habe):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/*
Letzter Tab soll auch einen Schliessen-Button behalten
Besonders geschickt mit der Einstellung
browser.tabs.closeWindowWithLastTab = false
in der about:config
*/</span>
<span style="color: #6666ff;">.tab-close-button</span> <span style="color: #00AA00;">&#123;</span><span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> -moz-box !important<span style="color: #00AA00;">;</span><span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

</li>
</ol>
</li>
<li>Jetzt nur noch den Firefox neu starten und alles l&#228;uft wieder wie gewohnt <img src='http://www.software-wahnsinn.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/191-pimp-my-firefox-3-5/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Google Earth Bug?</title>
		<link>http://www.software-wahnsinn.de/39-google-earth-bug/</link>
		<comments>http://www.software-wahnsinn.de/39-google-earth-bug/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 09:57:27 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[Hardware-Wahnsinn]]></category>
		<category><![CDATA[Software-Wahnsinn]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/39-google-earth-bug/</guid>
		<description><![CDATA[Eben staunte ich nicht schlecht. Ich hatte etwas in Google Earth nachgeschaut (ja, auch ich kann mich daf&#252;r begeistern) und sp&#228;ter mein Notebook schlafen gelegt. Und nach dem Aufwachen des Notebooks hatte ich folgende h&#252;bsche Ansicht: Manche Leute m&#246;gen ja vielleicht Kl&#246;tzchen-Grafik &#8211; aber nicht in Google Earth!]]></description>
			<content:encoded><![CDATA[<p>Eben staunte ich nicht schlecht. Ich hatte etwas in Google Earth nachgeschaut (ja, auch ich kann mich daf&#252;r begeistern) und sp&#228;ter mein Notebook schlafen gelegt. Und nach dem Aufwachen des Notebooks hatte ich folgende h&#252;bsche Ansicht:</p>
<p><a href="http://www.software-wahnsinn.de/wp-content/uploads/2008/04/google_earth_bug.jpg" title="Kl&#246;tzchen-Grafik in Google Earth"><img src="http://www.software-wahnsinn.de/wp-content/uploads/2008/04/google_earth_bug.thumbnail.jpg" title="Kl&#246;tzchen-Grafik in Google Earth" alt="Kl&#246;tzchen-Grafik in Google Earth" align="middle" border="0" height="259" width="400" /></a></p>
<p>Manche Leute m&#246;gen ja vielleicht Kl&#246;tzchen-Grafik &#8211; aber nicht in Google Earth!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/39-google-earth-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Imagick unter Windows</title>
		<link>http://www.software-wahnsinn.de/24-imagick-unter-windows/</link>
		<comments>http://www.software-wahnsinn.de/24-imagick-unter-windows/#comments</comments>
		<pubDate>Sat, 27 Oct 2007 13:36:46 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Software-Wahnsinn]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/24-imagick-unter-windows/</guid>
		<description><![CDATA[F&#252;r unsere Applikation, die wir seit &#252;ber einem halben Jahr entwickeln, setzen wir zur Erzeugung von Thumbnails und Seiten-Previews von PDF-Dateien bevorzugt ImageMagick ein. Wer mehr zu ImageMagick wissen will, der Besuche die Homepage oder lese sich den Wikipedia-Artikel durch. Der Vollst&#228;ndigkeit halber sei an dieser Stelle erw&#228;hnt, dass wir ImageMagick in Kombination mit Ghostscript [...]]]></description>
			<content:encoded><![CDATA[<p>F&#252;r unsere Applikation, die wir seit &#252;ber einem halben Jahr entwickeln, setzen wir zur Erzeugung von Thumbnails und Seiten-Previews von PDF-Dateien bevorzugt <a href="http://www.imagemagick.org/index.php" target="_blank" title="ImageMagick Homepage">ImageMagick</a> ein. Wer mehr zu ImageMagick wissen will, der Besuche die Homepage oder lese sich den <a href="http://de.wikipedia.org/wiki/Imagemagick" target="_blank" title="Wikipedia-Eintrag zu ImageMagick">Wikipedia-Artikel</a> durch. Der Vollst&#228;ndigkeit halber sei an dieser Stelle erw&#228;hnt, dass wir ImageMagick in Kombination mit <a href="http://de.wikipedia.org/wiki/Ghostscript" target="_blank" title="Wikipedia-Eintrag zu Ghostscript">Ghostscript</a> einsetzen, damit auch <a href="http://de.wikipedia.org/wiki/Portable_Document_Format" title="Wikipedia-Eintrag zu PDF" target="_blank">PDF</a> (und nat&#252;rlich auch <a href="http://de.wikipedia.org/wiki/PostScript" target="_blank" title="Wikipedia-Eintrag zu PostScript">PostScript</a>-Dateien) gerendert werden kann.</p>
<p>Aus PHP heraus rufen wir ImageMagick sowohl unter Windows als auch unter Linux per <a href="http://de2.php.net/manual/de/function.exec.php" title="PHP-Handbuch-Eintrag zu exec()" target="_blank">exec()</a> auf. Nicht gerade besonders elegant, aber wirkungsvoll <img src='http://www.software-wahnsinn.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Vor allem ist das Ansprechen per exec() in einer Objekt-orientierten Umgebung alles andere als intuitiv. (Wir setzen bei besagtem Projekt <a href="http://www.symfony-project.com/" target="_blank">Symfony</a> als Framework ein). So haben wir uns also eine Adapter-Klasse geschrieben, die den Zugriff auf ImageMagick h&#252;bsch objektorientiert verpackt.</p>
<p>Unter Linux bereitet diese Art der Einbindung von ImageMagick uns keinerlei Kopfschmerzen. ImageMagick ist  ebenso wie GhostScript auf den meisten Linux-Servern schon installiert oder mit geringem Aufwand &#252;ber die Distributions-eigene Paketverwaltung schnell nachinstalliert. Auch die Performance l&#228;sst sich sehen. Und unter Windows? Die Installation von IM und GS klappt mit den grafischen Installern noch ohne Probleme. Aber die Performance von ImageMagick l&#228;sst per PHP und exec() doch ein wenig zu w&#252;nschen &#252;brig (f&#252;r das Rendern einer Vorschau ben&#246;tigt unsere Applikation die doppelte bis dreifache Zeit unter Windows &#8211; trotz schnellerem Prozessor und mehr Hauptspeicher). Man merkt halt schon, f&#252;r welche Plattform sowohl IM als auch GS entwickelt wurden.</p>
<p>Als native Schnittstelle gibt es schon seit Jahren das <a href="http://de.wikipedia.org/wiki/PECL" title="Wikipedia-Eintrag zu PECL" target="_blank">PECL</a>-Paket <a href="http://pecl.php.net/package/imagick" target="_blank">Imagick</a>. Es wurde jedoch seit 2004 nicht mehr weiter entwickelt. Erst im Fr&#252;hjahr dieses Jahres haben sich wieder zwei Entwickler der Weiter-Entwicklung angenommen. Mittlerweile ist Imagick auch als Version 2.0.x stabil. Die 2er-Version wurde konsequent auf PHP5 und Oojekt-Orientierte Programmierung ausgelegt, so dass es keine Probleme bereiten sollte, Imagick in vorhandenen Projekten einzusetzen. Einziges Problem unter Windows ist jedoch, das PECL-Pakete nicht in PHP, sondern in C implementiert sind und man deshalb entweder vorkompilierte DLLs ben&#246;tigt, oder selber den Compiler anwerfen muss. Da ich nicht &#252;ber Microsoft Visual Studio verf&#252;ge und auch sonst ein wenig mit C auf Kriegsfu&#223; stehe, blieb nur noch Variante eins &#252;brig.</p>
<p><span id="more-24"></span>Der Finne <a href="http://valokuva.org/?page_id=2" target="_blank">Mikko Koppanen</a>, seines Zeichens einer der beiden Entwickler von Imagick,  hat aber &#252;ber sein durchaus lesenwertes <a href="http://valokuva.org/" title="Blog von Mikko Koppanen" target="_blank">Blog</a> die vorkompilierten <a href="http://valokuva.org/?page_id=50" title="Imagick DLLs f&#252;r Windows" target="_blank">DLLs f&#252;r Windows</a> bereitsgestellt. Die passende DLL herunter zu laden und in mein PHP-Extensions-Verzeichnis zu speichern war noch nicht wirklich schwierig. Aber den Kram ans Laufen zu bekommen schon. Das alte <a href="http://de.wikipedia.org/wiki/Howto" title="Wikipedia-Eintrag zu HowTo" target="_blank">HowTo</a>, auf welches auch Mikko <a href="http://redux.imagemagick.org/discourse-server/viewtopic.php?t=4708" target="_blank">hingewiesen</a> hat, war nur ansatzweise hilfreich. Vor allem hat es irgendwie das Layout zerschossen und ich kann daher nur jedem nahe legen, der sich dieses HowTo durchlesen m&#246;chte und Firefox mit installierter Web-Developer-Toolbar zur Verf&#252;gung hat, die Funktion zum Deaktivieren von Inline-Styles zu nutzen. Andernfalls lassen sich manche Quotes nicht lesen&#8230;</p>
<p>Nach Studium des o.g. HowTos habe ich mich dann an die Arbeit gemacht, Imagick auf meinem Notebook (Windows XP Pro, Apache 2.2.4 als Service, PHP 5.2.3 als CGI) ans fliegen zu bekommen:</p>
<ul>
<li> Die heruntergeladene DLL <code>php_imagick_dyn-Q8.dll</code> landet im Extensions-Verzeichnis meiner PHP-Installation (bei mir <code>C:\php5\ext</code>)</li>
<li>Die DLL muss nat&#252;rlich in der <code>php.ini</code> aktiviert werden:<br />
<code>extension=php_imagick_dyn-Q8.dll</code> dem Block mit den Erweiterungen hinzuf&#252;gen</li>
<li>Eine info.php mit folgendem Inhalt ins htdocs-Verzeichnis  gelegt:<br />
<code>&lt;?php<br />
phpinfo();<br />
?&gt;</code><br />
und im Browser aufgerufen.</li>
<li>Und was ist passiert? Nichts! Kein Imagick wird mir unter den aktivierten PHP-Erweiterungen angezeigt. Wenn ich PHP auf der Kommando-Zeile anspreche, dann bekomme ich die Fehlermeldung angezeigt, dass es nicht m&#246;glich w&#228;re die besagte DLL zu laden.</li>
<li>Dem obigen Howto konnte ich entnehmen, dass der Pfad zu ImageMagick-Installation der <code>PATH</code>-Umgebungsvariable von Windows hinzuzuf&#252;gen sei. Gesagt, getan, aber der Kram will immer noch nicht.</li>
<li>Der Vorschlag mit dem Setzen von<br />
<code>SetEnv MAGICK_HOME="C:/Programme/ImageMagick"</code><br />
in der <code>httpd.conf</code> des Apache will auch nicht so richtig funktionieren.</li>
<li>Letztendlich hat es dann damit geklappt, indem ich die Umgebungsvariable  <code>MAGICK_HOME</code> mit dem Wert <code>C:\Programme\ImageMagick</code> Windows beigebracht habe.</li>
<li>Aber erst nach einem Windows-typischen Neustart konnte ich endlich das Ergebnis meiner Bem&#252;hungen nach Aufruf der <code>info.php</code> im Browser bewundern:<br />
<a href="http://www.software-wahnsinn.de/wp-content/uploads/2007/10/imagick-screenshot.gif" title="Ausschnitt aus der info.php"></a></p>
<p style="text-align: center"><a href="http://www.software-wahnsinn.de/wp-content/uploads/2007/10/imagick-screenshot.gif" title="Ausschnitt aus der info.php"><img src="http://www.software-wahnsinn.de/wp-content/uploads/2007/10/imagick-screenshot.gif" title="Ausschnitt aus der info.php" alt="Ausschnitt aus der info.php" border="0" width="400" /></a></p>
</li>
</ul>
<p>Nachdem jetzt alles l&#228;uft, wollte ich doch mal ausprobieren, ob der Performance-Zuwachs tats&#228;chlich so toll ist, wie es Mikko als Ergebnis seines &#8220;<a href="http://valokuva.org/?p=40" target="_blank" title="Micor-Benchmark exec convert vs imagick">Micro-Benchmark</a>&#8221; in seinem Blog gepostet hat. Das Ergebnis war doch etwas ern&#252;chternd: Teilweise hat es mit Imagick doppelt so lange gedauert, als &#252;ber den Aufruf von <code>convert</code> via <code>exec()</code>.</p>
<p>Ich werde mal ein wenig an ein paar Stellschrauben drehen (z.B. wie sich das Einstellen der &#8220;<a href="http://valokuva.org/?p=11" target="_blank" title="Resource limiting">Ressource Limitations</a>&#8221; auswirkt) und was ich noch mit den ganzen anderen Parametern anstellen kann, die im <a href="http://www.php.net/manual/de/ref.imagick.php" target="_blank">Manual zu Imagick</a> genannt, aber kaum bzw. nicht weiter beschrieben sind.</p>
<p>Auch werde ich demn&#228;chst ein wenig Code und Beispiel-Dateien posten, mit denen meine Versuche nachvollzogen werden k&#246;nnen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/24-imagick-unter-windows/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>sfFileValidator und Firefox</title>
		<link>http://www.software-wahnsinn.de/9-sffilevalidator-und-firefox/</link>
		<comments>http://www.software-wahnsinn.de/9-sffilevalidator-und-firefox/#comments</comments>
		<pubDate>Fri, 31 Aug 2007 10:20:57 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[Software-Wahnsinn]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/9-sffilevalidator-und-firefox/</guid>
		<description><![CDATA[Ich bin gerade auf ein interessantes Ph&#228;nomen mit Symfony gestossen, wenn ich eine Form-Validierung auf einen File-Upload von PDF-Dateien loslasse: In einem Modul der Backend-Applikation unseres Projektes ist ein File-Upload f&#252;r PDF-Dateien vorgesehen. Dieses Form lasse ich auf den MIME-Type (in diesem Fall application/pdf) validieren. Das ganze lief auch schon auf einer anderen Maschine (auch [...]]]></description>
			<content:encoded><![CDATA[<p>Ich bin gerade auf ein interessantes Ph&#228;nomen mit Symfony gestossen, wenn ich eine Form-Validierung auf einen File-Upload von PDF-Dateien loslasse: In einem Modul der Backend-Applikation unseres Projektes ist ein File-Upload f&#252;r PDF-Dateien vorgesehen. Dieses Form lasse ich auf den <a href="http://de.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions" target="_blank">MIME</a>-Type (in diesem Fall application/pdf) validieren. Das ganze lief auch schon auf einer anderen Maschine (auch dort mit Firefox 2.0.x) problemlos. Aber hier auf meinem Schleppi will die Validierung nicht funktionieren. Im Internet Explorer 7 hingegen klappt alles problemlos.</p>
<p>Mit der FF-Erweiterung &#8220;<a href="https://addons.mozilla.org/de/firefox/addon/3829" target="_blank">Live HTTP Headers</a>&#8221; bin ich allerdings dem Fehler recht schnell auf die Spur gekommen: Der Firefox schickt anstelle von &#8220;application/pdf&#8221; den MIME-Type &#8220;text/html&#8221; mit. Warum er das macht kann ich noch nicht ganz nachvollziehen. Fakt ist aber, dass der <a href="http://www.symfony-project.com/book/trunk/10-Forms#File%20Validator" target="_blank">sfFileValidator</a> bei der Pr&#252;fung auf den MIME-Type des vom Browser mitgesendeten MIME-Type validiert und nicht auf den Tats&#228;chlichen. Wenn alle Stricke rei&#223;en, muss ich wohl einen eigenen Validator schreiben, der dann &#8220;richtig&#8221; den MIME-Type pr&#252;ft und sich nicht auf die Informationen des Browsers verl&#228;sst.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/9-sffilevalidator-und-firefox/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Virtualisierung auf meinem Notebook</title>
		<link>http://www.software-wahnsinn.de/5-virtualisierung-auf-meinem-notebook/</link>
		<comments>http://www.software-wahnsinn.de/5-virtualisierung-auf-meinem-notebook/#comments</comments>
		<pubDate>Thu, 30 Aug 2007 09:01:31 +0000</pubDate>
		<dc:creator>Ingo</dc:creator>
				<category><![CDATA[Hardware-Wahnsinn]]></category>
		<category><![CDATA[Software-Wahnsinn]]></category>

		<guid isPermaLink="false">http://www.software-wahnsinn.de/5-virtualisierung-auf-meinem-notebook/</guid>
		<description><![CDATA[Gestern abend habe ich auf meinem Notebook, dass ich seit Montag besitze (ein HP NX9420 mit WinXP) die Prozessor-Virtualisierung im BIOS eingeschaltet, damit das M$ Virtual PC, welches ich installiert habe, auch von diesem recht netten Feature profitieren kann. Schlie&#223;lich will ich im Virtual PC eine Linux-Box aufsetzen, damit ich Erfahrung sammeln kann, wie ich [...]]]></description>
			<content:encoded><![CDATA[<p>Gestern abend habe ich auf meinem Notebook, dass ich seit Montag besitze (ein HP NX9420 mit WinXP) die <a href="http://de.wikipedia.org/wiki/Intel_VT" target="_blank">Prozessor-Virtualisierung</a> im BIOS eingeschaltet, damit das <a href="http://de.wikipedia.org/wiki/Microsoft_Virtual_PC" target="_blank">M$ Virtual PC</a>, welches ich installiert habe, auch von diesem recht netten Feature profitieren kann. Schlie&#223;lich will ich im Virtual PC eine Linux-Box aufsetzen, damit ich Erfahrung sammeln kann, wie ich das aktuelle Projekt, welches ich mit Symfony entwickle, auch auf einem Deployment-Server ans Laufen bekomme. Also in gewisser Hinsicht ein lokaler bzw. virtueller Test-Server</p>
<p><span id="more-5"></span><br />
Ich schalte also in den BIOS-Einstellungen in freudiger Erwartung die Virtualisierung ein, das BIOS warnt mich davor, weil HP vor dem Einsatz warnt (warum bauen die dann erst Prozessoren ein, die dieses Feature anbieten *kopfkratz*) und boote den Rechner wieder. Windows meldet zwar kurz, dass sich seit dem letzten System-Start die Hardware-Konfiguration ge&#228;ndert hat, startet dann aber wie gewohnt. Erst als ich danach Virtual PC starte, bekomme ich etwas zu sehen, dass ich schon lange nicht mehr zu Gesicht bekommen habe: Den <a href="http://de.wikipedia.org/wiki/Blue_Screen_%28Fehlermeldung%29" target="_blank">Bluescreen of Death</a>! Schon seit ewigen Zeiten habe ich ihn nicht mehr gesehen. Weder auf meinem alten Notebook (lief noch unter Windows 2000) noch auf meinem Desktop-Rechner (ca. 1,5 Jahre alt mit WinXP) habe ich seit langem mehr ins Blaue geblickt.</p>
<p>Es kommt aber noch besser: Da sich der Rechner nach seinem blauen Exitus sofort zu einem Neustart aufrafft, schalte ich sofort im BIOS die Virtualisierung wieder ab (HP hatte wohl mit der Warnung nicht ganz unrecht) und Windows startet wieder. Wieder starte ich Virtual PC und sofort raucht der Rechner wieder ab. Ich m&#246;chte nur zu gerne wissen wieso?</p>
<p>Wie dem auch sei: Ich habe den Virtual PC erst einmal deinstalliert und werde ihn bald neu installieren. In der Zwischenzeit werde ich mal Ausschau halten, ob es irgendwo ein BIOS-Update, <a href="http://de.wikipedia.org/wiki/Howto" target="_blank">Howto</a> und &#228;hnliches gibt, damit ich doch noch Virtual PC <strong>mit</strong> der Prozessor-Virtualisierung ans fliegen bekomme.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.software-wahnsinn.de/5-virtualisierung-auf-meinem-notebook/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

