<?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>Martin&#039;s Blog</title>
	<atom:link href="http://blog.m-ri.de/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.m-ri.de</link>
	<description>Gesammeltes aus dem Leben eines &#34;normalen&#34; Programmierers... :-)</description>
	<lastBuildDate>Thu, 11 Mar 2010 18:53:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>TFSDeleteProject und der Fehler TF30063</title>
		<link>http://blog.m-ri.de/index.php/2010/02/14/tfsdeleteproject-und-der-fehler-tf30063/</link>
		<comments>http://blog.m-ri.de/index.php/2010/02/14/tfsdeleteproject-und-der-fehler-tf30063/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 19:34:41 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[VS 2008]]></category>
		<category><![CDATA[VS-2008]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=594</guid>
		<description><![CDATA[<p>Wer nach <strong>&#8220;TFSDeleteProject TF30063&#8243;</strong> googled findet genug Treffer, die eine Lösung anbieten. Viel ist hier nicht mehr dazu zu schreiben.</p>
<p>Hier die für mich wichtigsten Links, für Erklärung und Lösung dieses TFS Problems:<br />
<a href="http://blogs.msdn.com/dstfs/archive/2009/08/21/tfsdeleteproject-exe-thwarted-by-windows-sharepoint-services-permissions.aspx">http://blogs.msdn.com/dstfs/archive/2009/08/21/tfsdeleteproject-exe-thwarted-by-windows-sharepoint-services-permissions.aspx</a><br />
<a href="http://vsts-fu.blogspot.com/2008/10/tf30063-you-are-not-authorized-to.html">http://vsts-fu.blogspot.com/2008/10/tf30063-you-are-not-authorized-to.html</a><br />
<a href="http://social.msdn.microsoft.com/Forums/en-US/tfsadmin/thread/b5e6a42a-dc22-499c-97e0-4fe5b563d49a/">http://social.msdn.microsoft.com/Forums/en-US/tfsadmin/thread/b5e6a42a-dc22-499c-97e0-4fe5b563d49a/</a></p>
<p>Der letzte Link beschreibt die Lösung, aber es geht auch etwas schneller ohne sich an die Site und den TFS anzumelden <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<p>Wer in die Site-Administration geht wird dort immer den Benutzer <em>TFSSETUP </em>als <em>Site Collection Administrators </em>vorbelegt finden.<br />
Anstatt nun den eigenen Account in die <em>Sharepoint Site Collection Administrators </em>und in die <em>Team Foundation Administrators</em> einzutragen, kann man dem Account <em>TFSSETUP </em>auch die Rechte geben sich lokal an einem beliebigen Rechner anzumelden auf dem <em>VS-2008 </em>installiert ist. Das geht am einfachsten wenn man den <em>TFSSETUP</em> Account in die Gruppe <em>Benutzer/Domänen-Benutzer</em> aufnimmt.<br />
Oft wird dies bei der Installation und dem Anlegen des Accounts nicht einmal eingeschränkt, bzw. der Account ist bereits <em>Domänen-Benutzer</em> ;)<br />
Also als <em>TFSSETUP</em> anmelden und schon läuft der <em>TFSDeleteProject </em>ohne Probleme.</p>
<p>PS: Wenn man es richtig macht nimmt man dem <em>TFSSETUP </em>Account hinterher wieder das Recht für lokales Anmelden, den er benötigt es nicht im Gegensatz zu <em>TFSSERVICE</em>&#8230; <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F&amp;title=TFSDeleteProject%20und%20der%20Fehler%20TF30063&amp;annotation=Wer%20nach%20%22TFSDeleteProject%20TF30063%22%20googled%20findet%20genug%20Treffer%2C%20die%20eine%20L%C3%B6sung%20anbieten.%20Viel%20ist%20hier%20nicht%20mehr%20dazu%20zu%20schreiben.%0D%0A%0D%0AHier%20die%20f%C3%BCr%20mich%20wichtigsten%20Links%2C%20f%C3%BCr%20Erkl%C3%A4rung%20und%20L%C3%B6sung%20dieses%20TFS%20Problems%3A%0D%0Ahttp%3A%2F%2Fblogs.msdn.com%2F" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F&amp;title=TFSDeleteProject%20und%20der%20Fehler%20TF30063&amp;notes=Wer%20nach%20%22TFSDeleteProject%20TF30063%22%20googled%20findet%20genug%20Treffer%2C%20die%20eine%20L%C3%B6sung%20anbieten.%20Viel%20ist%20hier%20nicht%20mehr%20dazu%20zu%20schreiben.%0D%0A%0D%0AHier%20die%20f%C3%BCr%20mich%20wichtigsten%20Links%2C%20f%C3%BCr%20Erkl%C3%A4rung%20und%20L%C3%B6sung%20dieses%20TFS%20Problems%3A%0D%0Ahttp%3A%2F%2Fblogs.msdn.com%2F" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F&amp;bm_description=TFSDeleteProject%20und%20der%20Fehler%20TF30063&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F&amp;t=TFSDeleteProject%20und%20der%20Fehler%20TF30063" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F&amp;title=TFSDeleteProject%20und%20der%20Fehler%20TF30063" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=TFSDeleteProject%20und%20der%20Fehler%20TF30063%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F14%2Ftfsdeleteproject-und-der-fehler-tf30063%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2008/06/27/zwei-tools-die-die-interne-kommunikation-ueber-den-tfs-noch-einfacher-machen/" title="Zwei Tools, die die interne Kommunikation über den TFS noch einfacher machen&#8230; (Fr 27. Jun 2008)">Zwei Tools, die die interne Kommunikation über den TFS noch einfacher machen&#8230;</a> (0)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/04/13/vs-tipps-tricks-ganze-solutions-zu-einer-master-solutions-zusammenfuegen/" title="VS Tipps &#038; Tricks: Ganze Solutions zu einer Master-Solutions zusammenfügen (So 13. Apr 2008)">VS Tipps &#038; Tricks: Ganze Solutions zu einer Master-Solutions zusammenfügen</a> (4)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/05/29/tipps-trickstfs-undo-checkout-fuer-einen-anderen-anwenderworkspace-erzwingen/" title="Tipps &#038; Tricks:TFS Undo Checkout für einen anderen Anwender/Workspace erzwingen… (Do 29. Mai 2008)">Tipps &#038; Tricks:TFS Undo Checkout für einen anderen Anwender/Workspace erzwingen…</a> (0)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/02/14/tfsdeleteproject-und-der-fehler-tf30063/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Der Visual Studio 2010 Release Candidate ist erschienen</title>
		<link>http://blog.m-ri.de/index.php/2010/02/09/der-visual-studio-2010-release-candidate-ist-erschienen/</link>
		<comments>http://blog.m-ri.de/index.php/2010/02/09/der-visual-studio-2010-release-candidate-ist-erschienen/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 06:30:47 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[VS 2010]]></category>
		<category><![CDATA[Beta]]></category>
		<category><![CDATA[RC]]></category>
		<category><![CDATA[VS-2010]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=597</guid>
		<description><![CDATA[<p>Jetzt geht es in die Schlussphase <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<p>Der Release Candidate für <em>VisualStudio 2010 </em>ist nun draußen. MSDN Abonnenten können ihn jetzt schon herunterladen. In den nächsten Tagen wird dann auch ein freier Download zur Verfügung stehen.<br />
<a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx">http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx</a></p>
<p>Wie auch schon die Beta 2 gibt es für diesen RC eine Go Live Lizenz, mit der man direkt produktiv entwickeln darf.</p>
<p>Das endgültige Erscheinungsdatum bleibt weiterhin der <strong>12. April 2010</strong> <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<p>PS: Das jetzt der RC erschienen ist, heißt auch, dass nur noch wirklich extrem gravierende Bugs entfernt werden. Mit dem meisten was wir im RC sehen werden wir wohl auch im fertigen Produkt leben müssen. Ich bin gespannt welche Fehler aus der Beta 2 überlebt haben <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
Dennoch testen und Fehler melden: <a href="https://connect.microsoft.com/VisualStudio?wa=wsignin1.0">https://connect.microsoft.com/VisualStudio?wa=wsignin1.0</a></p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F&amp;title=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen&amp;annotation=Jetzt%20geht%20es%20in%20die%20Schlussphase%20%3A%21%3A%0D%0A%0D%0ADer%20Release%20Candidate%20f%C3%BCr%20VisualStudio%202010%20ist%20nun%20drau%C3%9Fen.%20MSDN%20Abonnenten%20k%C3%B6nnen%20ihn%20jetzt%20schon%20herunterladen.%20In%20den%20n%C3%A4chsten%20Tagen%20wird%20dann%20auch%20ein%20freier%20Download%20zur%20Verf%C3%BCgung%20stehen.%0D%0Ahttp%3A%2F%2Fms" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F&amp;title=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen&amp;notes=Jetzt%20geht%20es%20in%20die%20Schlussphase%20%3A%21%3A%0D%0A%0D%0ADer%20Release%20Candidate%20f%C3%BCr%20VisualStudio%202010%20ist%20nun%20drau%C3%9Fen.%20MSDN%20Abonnenten%20k%C3%B6nnen%20ihn%20jetzt%20schon%20herunterladen.%20In%20den%20n%C3%A4chsten%20Tagen%20wird%20dann%20auch%20ein%20freier%20Download%20zur%20Verf%C3%BCgung%20stehen.%0D%0Ahttp%3A%2F%2Fms" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F&amp;bm_description=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F&amp;t=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F&amp;title=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Der%20Visual%20Studio%202010%20Release%20Candidate%20ist%20erschienen%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F09%2Fder-visual-studio-2010-release-candidate-ist-erschienen%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2009/10/19/visualstudio-2010-news/" title="Visual Studio 2010 News (Mo 19. Okt 2009)">Visual Studio 2010 News</a> (8)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/05/15/msdn-abonnementen-koennen-ab-montag-den-18052009-visual-studio-2010-beta-1-herunterladen/" title="MSDN Abonnenten können ab Montag den 18.05.2009 Visual Studio 2010 Beta 1 herunterladen (Fr 15. Mai 2009)">MSDN Abonnenten können ab Montag den 18.05.2009 Visual Studio 2010 Beta 1 herunterladen</a> (2)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/12/21/vs-tipps-tricks-springe-zur-naechsten-klammer-funktioniert-auch-fuer-if-elif-else-und-endif/" title="VS-Tipps &#038; Tricks: Springe zur nächsten Klammer funktioniert auch für #if, #elif, #else und #endif (Mo 21. Dez 2009)">VS-Tipps &#038; Tricks: Springe zur nächsten Klammer funktioniert auch für #if, #elif, #else und #endif</a> (0)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/02/09/der-visual-studio-2010-release-candidate-ist-erschienen/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Alternative Geldanlage</title>
		<link>http://blog.m-ri.de/index.php/2010/02/05/alternative-geldanlage-2/</link>
		<comments>http://blog.m-ri.de/index.php/2010/02/05/alternative-geldanlage-2/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 17:39:02 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Christsein]]></category>
		<category><![CDATA[Real Life]]></category>
		<category><![CDATA[Geld]]></category>
		<category><![CDATA[Mikrokredit]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=588</guid>
		<description><![CDATA[<p>Seit 2006 <em>Muhammad Yunus</em> für seine Arbeit und seine <em>Grammeen Bank </em>den Friedensnobelpreis bekommen hat, habe ich auch immer mal wieder über Mikrokredite und gerechte Geldanlage nachgedacht.</p>
<p>Durch einen Artikel in der <a href="http://www.ojc.de/">OJC-Zeitschrift Salzkorn</a> bin ich jetzt wieder einmal auf solch eine alternative Bank gestoßen, die Geldanlage nach anderen Maßstäben betreibt:<br />
<strong>Oikocredit </strong><a href="http://www.oikocredit.org"><strong>http://www.oikocredit.org</strong></a></p>
<p>Ich denke, dass wir uns oft genug hinter dem Gedanken verstecken, dass man alleine nichts machen kann. Aber man kann <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /><br />
Mit 200 Euro, die man für einem Genossenschaftsanteil investiert können viele andere Menschen in dieser Welt, zu gerechten Konditionen, eine neue Perspektive für ihr Leben erhalten.</p>
<p>Also warum nicht auch ein paar Euro investieren bei einer ganz anderen Art von Bank und dabei auch noch immerhin 2% Dividende zu erhalten <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_question.gif' alt=':?:' class='wp-smiley' />  Es muss nicht immer eine Spende sein <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' />  <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Siehe auch <a href="http://www.ethische-geld-anlage.de/geldanlage-andere/oikocredit">http://www.ethische-geld-anlage.de</a>, wen das Thema noch mehr interessiert.</p>
<p><strong>Nachtrag 26.02.2010:</strong> Hier der direkte Link zu dem Artikel aus der Zeitschrift Salzkorn <a href="http://www.ojc.de/salzkorn/geldanlage-fair-gerecht-dritte-welt-sk4-2009.html">http://www.ojc.de/salzkorn/geldanlage-fair-gerecht-dritte-welt-sk4-2009.html</a></p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F&amp;title=Alternative%20Geldanlage&amp;annotation=Seit%202006%20Muhammad%20Yunus%20f%C3%BCr%20seine%20Arbeit%20und%20seine%20Grammeen%20Bank%20den%20Friedensnobelpreis%20bekommen%20hat%2C%20habe%20ich%20auch%20immer%20mal%20wieder%20%C3%BCber%20Mikrokredite%20und%20gerechte%20Geldanlage%20nachgedacht.%0D%0A%0D%0ADurch%20einen%20Artikel%20in%20der%20OJC-Zeitschrift%20Salzkorn%C2%A0bin" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F&amp;title=Alternative%20Geldanlage&amp;notes=Seit%202006%20Muhammad%20Yunus%20f%C3%BCr%20seine%20Arbeit%20und%20seine%20Grammeen%20Bank%20den%20Friedensnobelpreis%20bekommen%20hat%2C%20habe%20ich%20auch%20immer%20mal%20wieder%20%C3%BCber%20Mikrokredite%20und%20gerechte%20Geldanlage%20nachgedacht.%0D%0A%0D%0ADurch%20einen%20Artikel%20in%20der%20OJC-Zeitschrift%20Salzkorn%C2%A0bin" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F&amp;bm_description=Alternative%20Geldanlage&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F&amp;t=Alternative%20Geldanlage" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F&amp;title=Alternative%20Geldanlage" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Alternative%20Geldanlage%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F05%2Falternative-geldanlage-2%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2009/01/01/wir-muessen-schneller-handeln/" title="Wir müssen schneller handeln&#8230; (Do 01. Jan 2009)">Wir müssen schneller handeln&#8230;</a> (0)</li>
	<li><a href="http://blog.m-ri.de/index.php/2007/10/02/wie-unsere-gemeinden-wieder-oeffentlich-wahrgenommen-werden/" title="Wie unsere Kirchen und Gemeinden wieder öffentlich wahrgenommen werden! (Di 02. Okt 2007)">Wie unsere Kirchen und Gemeinden wieder öffentlich wahrgenommen werden!</a> (1)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/01/30/wenn-die-eigene-tochter-im-radio-zu-hoeren-ist/" title="Wenn die eigene Tochter im Radio zu hören ist&#8230; (Mi 30. Jan 2008)">Wenn die eigene Tochter im Radio zu hören ist&#8230;</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/02/05/alternative-geldanlage-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mein &#8220;Baby&#8221; ist nun &#8220;Kompatibel mit Windows 7&#8243;</title>
		<link>http://blog.m-ri.de/index.php/2010/02/01/mein-baby-ist-nun-kompatibel-mit-windows-7/</link>
		<comments>http://blog.m-ri.de/index.php/2010/02/01/mein-baby-ist-nun-kompatibel-mit-windows-7/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 19:02:15 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Sonstiges]]></category>
		<category><![CDATA[Vista / Windows 7]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Vista]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=591</guid>
		<description><![CDATA[<p><img class="alignright size-full wp-image-593" title="Kompatibel mit Windows 7" src="http://blog.m-ri.de/wp-content/uploads/2010/01/DE-w7-comp_rgb_M.png" alt="" width="72" height="87" />Das meine Software auf allem läuft was <em>Windows XP </em>und später heißt war mir schon lange klar <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  aber ein offizielles &#8220;Kompatibel für&#8230;&#8221; ist ja schon noch was anderes.<br />
Jetzt habe ich die kostenlose Zertifizierung für die <em>Windows 7 Kompatibilität </em>hinter mich gebracht.<br />
In Klartext ganz offiziell: <strong>AG-VIP SQL in der Version 1.20.008 ist kompatibel mit Windows 7</strong> <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<p>Verglichen mit der <em>Vista </em>Zertifizierung, die wir bei einem 3rd Party Unternehmen (<a href="http://www.veritest.com" target="_blank">VeriTest</a>) durchgeführt haben, muss ich sagen: <strong>Windows 7 kompatibel zu werden ist nicht schwer<br />
</strong>Es war wirklich kein großer Aufwand!</p>
<p>Wer sich die Spezifikationen durchgelesen hat wird sehen, dass sich gegenüber der <em>Vista </em>Zertifizierung kaum was geändert hat. Wer also seine Software bereits <em>Vista </em>kompatibel hat, kann gleich einen Durchstart machen und es für <em>Windows 7 </em>auch probieren. Und das schöne: <em>Es kostet nichts!</em><br />
Ich habe es nicht versucht, aber ich vermute mal, dass genau die Version die ich für Vista eingereicht habe auch durch die <em>Windows 7 </em>Zertifizierung gekommen wäre.</p>
<p>Noch ein paar Anmerkungen:</p>
<ul>
<li>Ich kann jeden ermutigen, den Test zu machen, wenn man sowieso schon ein Code Signing Zertifikat und einen 64bit Rechner zur Verfügung hat. Wenn man auf dem man 64bit <em>Windows 7 </em>virtualisieren kann ist die Zertifizierung wirklich einfach. Ich habe <a href="http://www.vmware.com">VMWare</a> benutzt und das ist einfach ein super Werkzeug für so etwas.</li>
<li>Wie bei vielen Zertifizierungen wird viel zu viel Gewicht auf Installation und Deinstallation gelegt. Das war bei der <em>Vista </em>Zertifizierung auch schon so.</li>
<li>Bei der <em>Vista </em>Zertifizierung war noch klar, wie und wo man Waiver (Freistellungen) bekommt, z.B. für Komponenten von Drittherstellern, die Ihre DLLs nicht signieren. Dazu gehört ja auch Microsoft mit den DLLs der MFC <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
In diesem Zertifizierungsprozess, erfährt man, dass man sie evtl. benötigt, aber nicht wo man sie bekommt&#8230;</li>
<li>Manche in meinen Augen wertvolle Tests in der <em>Vista </em>Zertifizierung, wie zum Beispiel, die korrekte Behandlung von Crashes, scheinen vollkommen entfallenzu sein.</li>
<li>Der Test bei dem 3rd Party Unternehmen war weitaus tiefer als das was man bei dem Selbsttest macht. Jetzt genügt ja die Software zu starten und wieder zu beenden. Bei den Tests zu <em>Vista </em>sind wir beim ersten mal durchgefallen, weil hier ein Bug in der MFC mit dem <em>Application Verifier </em>gefunden wurde, der uns beim Testen nicht aufgefallen war  (Siehe <a href="http://blog.m-ri.de/index.php/2007/04/25/bug-in-cpropertypage-und-certified-for-vista/" target="_blank">1</a>, <a href="http://blog.m-ri.de/index.php/2007/04/05/patch-fuer-cpropertypage-bug-der-mfc71dllmfc71udll/" target="_blank">2</a>, <a href="http://blog.m-ri.de/index.php/2007/04/03/bug-in-der-mfc71dll-bzgl-cpropertysheetcpropertypage/" target="_blank">3</a>) <br />
Ich empfinde den Selbsttest als zu schwach um dann ein <em>Windows 7 kompatibel</em> Logo zu bekommen.</li>
<li>Man muss versichern, dass man keine Spyware zertifiziert oder andere böse Software erzeugt&#8230; gelinde gesagt ein Scherz. Bei einem 3rd Party Tester würde solche Spyware (hoffentlich) nicht durchkommen. Das hoffe ich doch wirklich mal! Jetzt muss man nur einen Haken setzen, und sich selbst bestätigen, dass man es nicht tut, obwohl man es evtl. doch tut&#8230; <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
Das mindert den Wert dieses Logos ungemein.</li>
<li>Wenn man früher Geld investierte für eine Zertifizierung, hieß das nicht, dass man deshalb bessere Software produziert. Aber 1000$ waren dennoch eine Schwelle über die nicht jeder Hanswurst mit seiner Mickey-Maus-Software gegangen ist.<br />
Jetzt bleibt als Schwelle nur noch der Kauf eines Code-Signing Zertifikates bei <a href="http://www.verisign.de" target="_blank">VeriSign</a> und so was kostet ca. 500$ im Jahr.</li>
<li>Ich vermisse schon lange das Verbot anderer Techniken, zum Beispiel ein Verbot von Systemweiten Hooks, wenn man <em>Windows X kompatibel </em>sein will. Wenn dann sollte so etwas auch nur mit einem Waiver und klarer Begründung erlaubt werden.<br />
Nicht wenige dieser mies programmierten Hooks sorgen für Instabilität, unnützes Aufblähen von Prozessen und manchmal auch miese Performance.</li>
</ul>
<p>Als Fazit bleibt für mich die Frage:<br />
Was nützt ein Logo, dass man zu leicht bekommen kann?</p>
<p>Es bleibt eine Marketing-Aktion und genauso wurde die <em>Vista </em>und jetzt auch die <em>Windows 7 </em>Zertifizierung auch bei uns in der Firma eingestuft. Technischen Nutzen hat das ganze nicht wirklich.</p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F&amp;title=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22&amp;annotation=Das%20meine%20Software%20auf%20allem%20l%C3%A4uft%20was%20Windows%20XP%20und%20sp%C3%A4ter%20hei%C3%9Ft%20war%20mir%20schon%20lange%20klar%20%3B%29%20aber%20ein%20offizielles%20%22Kompatibel%20f%C3%BCr...%22%20ist%20ja%20schon%20noch%20was%20anderes.%0D%0AJetzt%20habe%20ich%20die%20kostenlose%20Zertifizierung%20f%C3%BCr%20die%20Windows%207%20Kompatibilit%C3%A4" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F&amp;title=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22&amp;notes=Das%20meine%20Software%20auf%20allem%20l%C3%A4uft%20was%20Windows%20XP%20und%20sp%C3%A4ter%20hei%C3%9Ft%20war%20mir%20schon%20lange%20klar%20%3B%29%20aber%20ein%20offizielles%20%22Kompatibel%20f%C3%BCr...%22%20ist%20ja%20schon%20noch%20was%20anderes.%0D%0AJetzt%20habe%20ich%20die%20kostenlose%20Zertifizierung%20f%C3%BCr%20die%20Windows%207%20Kompatibilit%C3%A4" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F&amp;bm_description=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F&amp;t=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F&amp;title=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Mein%20%22Baby%22%20ist%20nun%20%22Kompatibel%20mit%20Windows%207%22%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F02%2F01%2Fmein-baby-ist-nun-kompatibel-mit-windows-7%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2010/01/07/nett-windows-7-und-sein-godmode/" title="Nett: Windows 7 und sein GodMode ;) (Do 07. Jan 2010)">Nett: Windows 7 und sein GodMode ;)</a> (4)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/12/13/installation-aelterer-software-auf-windows-vista-oder-windows-7/" title="Installation älterer Software auf Windows-Vista oder Windows 7 (So 13. Dez 2009)">Installation älterer Software auf Windows-Vista oder Windows 7</a> (3)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/12/08/windows-integrity-control-schreibzugriff-auf-eine-named-pipe-eines-services-ueber-anonymen-zugriff-auf-vista-windows-2008-server-und-windows-7/" title="Windows Integrity Control: Schreibzugriff auf eine Named Pipe eines Services über anonymen Zugriff auf Vista, Windows 2008 Server und Windows 7 (Di 08. Dez 2009)">Windows Integrity Control: Schreibzugriff auf eine Named Pipe eines Services über anonymen Zugriff auf Vista, Windows 2008 Server und Windows 7</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/02/01/mein-baby-ist-nun-kompatibel-mit-windows-7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Was denn nun SwitchToThread(), Sleep(0), Sleep(1)?</title>
		<link>http://blog.m-ri.de/index.php/2010/01/23/was-denn-nun-switchtothread-sleep0-sleep1-2/</link>
		<comments>http://blog.m-ri.de/index.php/2010/01/23/was-denn-nun-switchtothread-sleep0-sleep1-2/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 19:39:22 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Sonstiges]]></category>
		<category><![CDATA[Windows API]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Multithreading]]></category>
		<category><![CDATA[Threads]]></category>
		<category><![CDATA[Win32]]></category>
		<category><![CDATA[WinAPI]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=580</guid>
		<description><![CDATA[<p>Was macht man, wenn man keine Wait-Funktionen verwenden will, aber dennoch möchte, dass ein anderer Thread weiterarbeiten kann. Zum Beispiel, weil man einen Spinlock implementieren will.</p>
<p>Nun es gibt insgesamt vier Methoden die durch das Netz geistern.<br />
Ich gehe mal der Häufigkeit nach, die so in manchen Code-Samples finde:</p>
<h3>1. __noop;</h3>
<p>Wenn der Lock kurz ist, scheint es das beste zu sein, einfach die Schleife weiterlaufen zu lassen und zu hoffen, dass der ein Thread auf einem anderen Prozessor, die Ressource freigibt. Das eignet sich wirklich nur, wenn die Zeitdauer der Sperre als extrem kurz anzusehen ist und eine hohe Anzahl von Prozessoren zur Verfügung steht.<br />
Nach allen Test, die ich gemacht habe, sollte man aber von dieser Art des Wartens bei einem Spinlock absehen. Es schiebt die Leistung des Kerns auf 100% und bringt nichts.</p>
<h3>2.  Sleep(0);</h3>
<p>Lies sich gut. Schlafe aber eben nicht lange. Man hat auch schon irgendwo gelesen, dass durch diese Methode der Rest der Zeitscheibe dieses Threads aufgegeben wird und ein anderer Thread an die Reihe kommt.<br />
Leider stimmt das nicht ganz <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /><br />
Liest man die <a href="http://msdn.microsoft.com/en-us/library/ms686298(VS.85).aspx">Doku</a> genau steht da aber:</p>
<blockquote><p>A value of zero causes the thread to relinquish the remainder of its time slice to any other thread of equal priority that is ready to run. If there are no other threads of equal priority ready to run, the function returns immediately, and the thread continues execution.</p></blockquote>
<p> <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_surprised.gif' alt=':eek:' class='wp-smiley' />  Threads mit höherer oder niedriger Prio haben also nichts davon.</p>
<p>Besonders eklig wird das ganze gerade wenn man Threads unterschiedlicher Prio hat, die hier gegeneinander laufen. <em>Sleep(0);</em> führt in diesem Fall zu einerunnötigen Prozessorlast und eben nicht dazu, dass die Zeitscheibe abgegeben wird. Der Prozess kommt sofort wieder an die Reihe und spin-t weiter.</p>
<h3>3. SwitchToThread();</h3>
<p>OK. Seit <em>Windows 2000</em> gibt es diese nette neue Funktion. Damit wird ein anderer Thread aktiv. Egal was für eine Prio er hat. Aber auch diese Funktion tut evtl. nicht genau das was man will.<br />
Auch hier stecken die Tücken im Detail der <a href="http://msdn.microsoft.com/en-us/library/ms686352(VS.85).aspx">Doku</a>:</p>
<blockquote><p>The yield of execution is limited to the processor of the calling thread. The operating system will not switch execution to another processor, even if that processor is idle or is running a thread of lower priority.</p></blockquote>
<p>Sollte also der Thread, auf den man wartet auf dem anderen Prozessor laufen, so profitiert der nicht von dem Aufruf von <em>SwitchToThread</em>.</p>
<h3>4. Sleep(1):</h3>
<p>Hiermit erreicht man wirklich was man möchte. Man gibt seine Timeslice auf und erstmal sind die anderen dran.</p>
<h3>Mein persönliches Fazit:</h3>
<p>Nach meinen Recherchen ist <em>Sleep(1); </em>der vernünftigste Weg seine Zeitscheibe abzugeben. Und nach meinem Dafürhalten ist ein <em>__noop; </em>strickt zu vermeiden. Die Performance ist grottenschlecht.<br />
Das ganze Verhalten hängt extrem auch von den Umständen ab: Zahl der Theads, Häufigkeit der Kollision, Anzahl verfügbare Prozessoren, Verteilung der Prioritäten, Allgemeine Belastung des Systems, Zeitdauer der Sperre etc.</p>
<p>Ich habe mit einigen Parametern gespielt und auch ein kleines Sample gebaut, dass alle 4 oben genannten Funktionen durchprobiert und in dem man auch mit anderen Faktoren (Priorität etc.) spielen kann.<br />
Es zeigte sich, dass <em>Sleep(1);</em> am effektivsten war. Aber dicht auf gefolgt von <em>Sleep(0);</em>, was mich doch etwas überraschte.</p>
<p>Allerdings führen schon kleinste Änderungen (Lockdauer, Zahl der Prozessoren, Spielen mit der Priorität) zu anderen Ergebnissen.<br />
Interessant ist vor allem das Spielen mit den Prioritäten. Man soll nicht glauben, das ein Thread selbst mit niedrigster Prio noch relativ häufig Arbeit bekommt.</p>
<p>Viel Spaß beim Spielen mit dem Code <a href="http://blog.m-ri.de/wp-content/uploads/2010/01/SleepTest.zip">SleepTest</a></p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F&amp;title=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F&amp;annotation=Was%20macht%20man%2C%20wenn%20man%20keine%20Wait-Funktionen%20verwenden%20will%2C%20aber%20dennoch%20m%C3%B6chte%2C%20dass%20ein%20anderer%20Thread%20weiterarbeiten%20kann.%20Zum%20Beispiel%2C%20weil%20man%20einen%20Spinlock%20implementieren%20will.%0D%0A%0D%0ANun%20es%20gibt%20insgesamt%20vier%20Methoden%20die%20durch%20das%20Netz%20geis" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F&amp;title=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F&amp;notes=Was%20macht%20man%2C%20wenn%20man%20keine%20Wait-Funktionen%20verwenden%20will%2C%20aber%20dennoch%20m%C3%B6chte%2C%20dass%20ein%20anderer%20Thread%20weiterarbeiten%20kann.%20Zum%20Beispiel%2C%20weil%20man%20einen%20Spinlock%20implementieren%20will.%0D%0A%0D%0ANun%20es%20gibt%20insgesamt%20vier%20Methoden%20die%20durch%20das%20Netz%20geis" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F&amp;bm_description=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F&amp;t=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F&amp;title=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Was%20denn%20nun%20SwitchToThread%28%29%2C%20Sleep%280%29%2C%20Sleep%281%29%3F%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F23%2Fwas-denn-nun-switchtothread-sleep0-sleep1-2%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2008/05/21/cb_addstringcb_insertstringcbs_uppercaseunicodeconst-string-pointer-das-grosse-erstaunen/" title="CB_ADDSTRING/CB_INSERTSTRING+CBS_UPPERCASE+Unicode+const String Pointer == das große Erstaunen (Mi 21. Mai 2008)">CB_ADDSTRING/CB_INSERTSTRING+CBS_UPPERCASE+Unicode+const String Pointer == das große Erstaunen</a> (3)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/12/07/aus-zwei-mach-eins-wie-man-zwei-cursor-kombinieren-kann/" title="Aus zwei mach eins: Wie man zwei Cursor kombinieren kann (So 07. Dez 2008)">Aus zwei mach eins: Wie man zwei Cursor kombinieren kann</a> (5)</li>
	<li><a href="http://blog.m-ri.de/index.php/2007/05/31/_unicode-versus-unicode-und-so-manches-eigentuemliche/" title="_UNICODE versus UNICODE und so manches Eigentümliche (Do 31. Mai 2007)">_UNICODE versus UNICODE und so manches Eigentümliche</a> (0)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/01/23/was-denn-nun-switchtothread-sleep0-sleep1-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Alle SQL Server enumerieren mit den OLE-DB Enumeratoren</title>
		<link>http://blog.m-ri.de/index.php/2010/01/18/alle-sql-server-enumerieren-mit-den-ole-db-enumeratoren/</link>
		<comments>http://blog.m-ri.de/index.php/2010/01/18/alle-sql-server-enumerieren-mit-den-ole-db-enumeratoren/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 19:19:30 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[ATL]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Windows API]]></category>
		<category><![CDATA[MS-SQL]]></category>
		<category><![CDATA[OLE-DB]]></category>
		<category><![CDATA[OLEDB]]></category>
		<category><![CDATA[SQ 2005]]></category>
		<category><![CDATA[SQL 2000]]></category>
		<category><![CDATA[SQL 2008]]></category>
		<category><![CDATA[Win32]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=571</guid>
		<description><![CDATA[<p>Wie bekommt man eigentlich einfach eine Liste aller verfügbaren SQL-Server im Netz?</p>
<p>In der MSDN findet sich schnell ein Artikel <a href="http://support.microsoft.com/kb/287737/en-us">How to enumerate available instances of SQL Server by using the SQLDMO components</a>. Allerdings ist dieser Artikel wenig nützlich, denn SQL-DMO findet man nur noch selten auf einem Rechner.</p>
<p>Dabei ist es doch relativ einfach, denn OLE-DB sieht hierfür Enumeratoren vor. Aber auch die sind nicht sonderlich gut dokumentiert. In der SQL-2000 Server Doku findet sich noch ein Eintrag für den <a href="http://msdn.microsoft.com/en-us/library/aa198369(SQL.80).aspx">SQLOLEDB Enumerator</a>. Für den neuen nativen OLE-DB Clienst für den SQL-Server finde ich nichts mehr dazu.</p>
<p>ATL stellt direkt Klassen zur Verfügung, die die Nutzung von Enumeratoren zu einem Kinderspiel machen.</p>
<p>Anbei ein Codeschnippsel der alle bekannten MS-SQL Server enumeriert. Ich beginne dabei mit dem neuesten Client (2008) und gehe die Schleife weiter bis zum ältesten Server Client (2000).<br />
Wird ein Enumerator gefunden, und dieser lieferte Ergebnisse, dann wird die Schleife abgebrochen. Denn alle Enumeratoren liefern im Allgemeinen das gleiche Ergebnis.</p>
<p>Code:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">&nbsp;
<span style="color: #666666;">//////////////////////////////////////////////////////////////////////////</span>
<span style="color: #666666;">// Main function to enumerate all servers with the appropriate</span>
<span style="color: #666666;">// known enumerators.</span>
&nbsp;
<span style="color: #0000ff;">typedef</span> std<span style="color: #008080;">::</span><span style="color: #007788;">set</span>  TSET_CString<span style="color: #008080;">;</span>
&nbsp;
<span style="color: #0000ff;">void</span> EnumSQLServer<span style="color: #008000;">&#40;</span>TSET_CString <span style="color: #000040;">&amp;</span>setSQLServer<span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
  <span style="color: #666666;">// We may need the local server name. </span>
  <span style="color: #666666;">// We replace the token (local) with the current computer name.</span>
  CString strCompLocal<span style="color: #008080;">;</span>
  DWORD dwLen <span style="color: #000080;">=</span> MAX_COMPUTERNAME_LENGTH<span style="color: #000040;">+</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span>
  <span style="color: #008080;">::</span><span style="color: #007788;">GetComputerName</span><span style="color: #008000;">&#40;</span>CStrBuf<span style="color: #008000;">&#40;</span>strCompLocal,dwLen<span style="color: #008000;">&#41;</span>,<span style="color: #000040;">&amp;</span>dwLen<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
  <span style="color: #666666;">// Loop over all enumerators we know</span>
  <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">const</span> PCWSTR aEnumerator<span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> <span style="color: #000080;">=</span>
  <span style="color: #008000;">&#123;</span>
    L<span style="color: #FF0000;">&quot;SQLNCLI10 Enumerator&quot;</span>,    <span style="color: #666666;">// SQL 2008</span>
    L<span style="color: #FF0000;">&quot;SQLNCLI Enumerator&quot;</span>,      <span style="color: #666666;">// SQL 2005</span>
    L<span style="color: #FF0000;">&quot;SQLOLEDB Enumerator&quot;</span>      <span style="color: #666666;">// SQL 2000</span>
  <span style="color: #008000;">&#125;</span><span style="color: #008080;">;</span>
&nbsp;
  <span style="color: #666666;">// Try all enumerators</span>
  <span style="color: #0000ff;">for</span> <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span> i<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span> i <span style="color: #000080;">&lt;</span> _countof<span style="color: #008000;">&#40;</span>aEnumerator<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span> <span style="color: #000040;">++</span>i<span style="color: #008000;">&#41;</span>
  <span style="color: #008000;">&#123;</span>
    <span style="color: #666666;">// Check if we have an enumerator</span>
    <span style="color: #0000ff;">bool</span> bFoundAny <span style="color: #000080;">=</span> <span style="color: #0000ff;">false</span><span style="color: #008080;">;</span>
    HRESULT hr<span style="color: #008080;">;</span>
    CLSID clsid<span style="color: #008080;">;</span>
    hr <span style="color: #000080;">=</span> CLSIDFromProgID<span style="color: #008000;">&#40;</span>aEnumerator<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span>,<span style="color: #000040;">&amp;</span>clsid<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
    <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>SUCCEEDED<span style="color: #008000;">&#40;</span>hr<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span>
    <span style="color: #008000;">&#123;</span>
      <span style="color: #666666;">// Open enumerator and loop over all entries</span>
      CEnumerator enumrator<span style="color: #008080;">;</span>
      hr <span style="color: #000080;">=</span> enumrator.<span style="color: #007788;">Open</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>clsid<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
      <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>SUCCEEDED<span style="color: #008000;">&#40;</span>hr<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span>
      <span style="color: #008000;">&#123;</span>
        <span style="color: #0000ff;">while</span> <span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span>hr<span style="color: #000080;">=</span>enumrator.<span style="color: #007788;">MoveNext</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #000080;">==</span>S_OK<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
          CString strServerName<span style="color: #008000;">&#40;</span>enumrator.<span style="color: #007788;">m_szName</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
          <span style="color: #666666;">// Skip empty server names </span>
          <span style="color: #666666;">// (older enumerators return sometimes an empty name)</span>
          <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>strServerName.<span style="color: #007788;">IsEmpty</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span>
            <span style="color: #0000ff;">continue</span><span style="color: #008080;">;</span>
&nbsp;
          <span style="color: #666666;">// Some enumerators return (local) for a local main</span>
          <span style="color: #666666;">// SQL server instance</span>
          <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>strServerName.<span style="color: #007788;">CompareNoCase</span><span style="color: #008000;">&#40;</span>_T<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;(local)&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #000080;">==</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span>
          <span style="color: #008000;">&#123;</span>
            ATLTRACE<span style="color: #008000;">&#40;</span>__FUNCTION__ <span style="color: #FF0000;">&quot; found local computer<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
            strServerName <span style="color: #000080;">=</span> strCompLocal<span style="color: #008080;">;</span>
          <span style="color: #008000;">&#125;</span>
&nbsp;
          <span style="color: #666666;">// get uppercase server name</span>
          strServerName.<span style="color: #007788;">MakeUpper</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
          <span style="color: #666666;">// Insert in list and avoid duplicates with this, if</span>
          <span style="color: #666666;">// developer decides not to break the loop after the first</span>
          <span style="color: #666666;">// enumerator.</span>
          <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>setSQLServer.<span style="color: #007788;">insert</span><span style="color: #008000;">&#40;</span>strServerName<span style="color: #008000;">&#41;</span>.<span style="color: #007788;">second</span><span style="color: #008000;">&#41;</span>
            ATLTRACE<span style="color: #008000;">&#40;</span>__FUNCTION__ <span style="color: #FF0000;">&quot; found server %s<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>,
                  CT2A<span style="color: #008000;">&#40;</span>strServerName.<span style="color: #007788;">GetString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
          bFoundAny <span style="color: #000080;">=</span> <span style="color: #0000ff;">true</span><span style="color: #008080;">;</span>
        <span style="color: #008000;">&#125;</span>
      <span style="color: #008000;">&#125;</span>
&nbsp;
      <span style="color: #666666;">// After we have found data in one enumerator. There is no need</span>
      <span style="color: #666666;">// to do this again.</span>
      <span style="color: #666666;">// But a developer might decide to do this for every enumerator</span>
      <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>bFoundAny<span style="color: #008000;">&#41;</span>
        <span style="color: #0000ff;">break</span><span style="color: #008080;">;</span>
    <span style="color: #008000;">&#125;</span>
  <span style="color: #008000;">&#125;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p>Ein lauffähiges Projekt kann man hier herunterladen: <a href="http://blog.m-ri.de/wp-content/uploads/2010/01/EnumSQLServer.zip">EnumSQLServer.zip</a>.</p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F&amp;title=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren&amp;annotation=Wie%20bekommt%20man%20eigentlich%20einfach%20eine%20Liste%20aller%20verf%C3%BCgbaren%20SQL-Server%20im%20Netz%3F%0D%0A%0D%0AIn%20der%20MSDN%20findet%20sich%20schnell%20ein%20Artikel%20How%20to%20enumerate%20available%20instances%20of%20SQL%20Server%20by%20using%20the%20SQLDMO%20components.%20Allerdings%20ist%20dieser%20Artikel%20wenig" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F&amp;title=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren&amp;notes=Wie%20bekommt%20man%20eigentlich%20einfach%20eine%20Liste%20aller%20verf%C3%BCgbaren%20SQL-Server%20im%20Netz%3F%0D%0A%0D%0AIn%20der%20MSDN%20findet%20sich%20schnell%20ein%20Artikel%20How%20to%20enumerate%20available%20instances%20of%20SQL%20Server%20by%20using%20the%20SQLDMO%20components.%20Allerdings%20ist%20dieser%20Artikel%20wenig" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F&amp;bm_description=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F&amp;t=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F&amp;title=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Alle%20SQL%20Server%20enumerieren%20mit%20den%20OLE-DB%20Enumeratoren%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F18%2Falle-sql-server-enumerieren-mit-den-ole-db-enumeratoren%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2009/03/09/ms-sql-universelles-datumsformat/" title="MS-SQL: Universelles Datumsformat (Mo 09. Mrz 2009)">MS-SQL: Universelles Datumsformat</a> (6)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/02/02/wie-man-sich-mit-ccomdispatchdriver-bzw-ccomptrinvoken-hereinlegen-kann/" title="Wie man sich mit CComDispatchDriver bzw. CComPtr&lt;IDispatch&gt;::InvokeN hereinlegen kann (Sa 02. Feb 2008)">Wie man sich mit CComDispatchDriver bzw. CComPtr&lt;IDispatch&gt;::InvokeN hereinlegen kann</a> (0)</li>
	<li><a href="http://blog.m-ri.de/index.php/2010/01/23/was-denn-nun-switchtothread-sleep0-sleep1-2/" title="Was denn nun SwitchToThread(), Sleep(0), Sleep(1)? (Sa 23. Jan 2010)">Was denn nun SwitchToThread(), Sleep(0), Sleep(1)?</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/01/18/alle-sql-server-enumerieren-mit-den-ole-db-enumeratoren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bug in der Windows UI: SetRedraw verändert WS_VISIBLE Stil in einem RTF Control</title>
		<link>http://blog.m-ri.de/index.php/2010/01/14/bug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control/</link>
		<comments>http://blog.m-ri.de/index.php/2010/01/14/bug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 19:10:32 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[MFC]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows API]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[Win32]]></category>
		<category><![CDATA[WinAPI]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=528</guid>
		<description><![CDATA[<p>Ich habe eine relativ komplexe UI, die auch dynamisch Controls erzeugt. In diese Controls werden auch zum Teil Massen an Daten hineingeschoben. Damit alle Controls zeitgleich erst die Daten präsentieren verwende ich eine einfache Methode, die aus alten Windows Tagen stammt: <a href="http://msdn.microsoft.com/en-us/library/btaacw58(VS.80).aspx">CWnd::SetRedraw</a><em>/</em><a href="http://msdn.microsoft.com/en-us/library/ms912675.aspx">WM_SETREDRAW</a>. Man verwendet diese Nachricht zum Beispiel um das Flackern von Listboxen und Comboboxen zu verhindern, wenn man viele Daten einfügt.<br />
Diese Nachricht wird von allen Fenstern unterstützt oder sollte unterstützt werden <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Meine Software macht nun folgendes:</p>
<ul>
<li>Zuerst hat meine Ladeprozedur für die Daten, zuerst alle Controls erzeugt, oder überflüssige vernichtet und positioniert, oder evtl. nur ausgeblendet (<em>ShowWindow(SW_HIDE)</em>. D.h. nach dem ersten Laden der Daten ändert sich am Layout evtl. nichts mehr.</li>
<li>Anschließend wurde an alle Controls <em>CWnd::SetRedraw/WM_SETREDRAW</em> mit <em>FALSE </em>gesendet.</li>
<li>Dann die Daten geladen.</li>
<li>Nach dem Laden wird einfach wieder <em>CWnd::SetRedraw/WM_SETREDRAW </em>mit <em>TRUE</em> gesendet und ein Invalidate durchgeführt.</li>
</ul>
<p>Das funktioniert für alle Controls, mit einer Ausnahme: Das <em>RTF </em>Control. Wenn man <em>WM_SETREDRAW TRUE </em>an ein <em>RTF </em>Control sendet, das nicht sichtbar ist, dann wird dieses sichtbar. Der Stil <em>WS_VISIBLE </em>wird also verändert. <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_surprised.gif' alt=':eek:' class='wp-smiley' /> </p>
<p>Um das Problem zu isolieren habe ich <a href="http://blog.m-ri.de/wp-content/uploads/2009/12/TestRTFSetRedraw.zip">hier ein kleines Testprogramm</a> geschrieben. Der kritische Code sieht so aus. Das gesamte Projekt kann man hier auch herunterladen: Demoprojekt.</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">void</span> CTestRTFSetRedrawDlg<span style="color: #008080;">::</span><span style="color: #007788;">OnBnClickedBtDoit</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
 <span style="color: #0000ff;">bool</span> bWasVisible <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span>m_wndEdRTF.<span style="color: #007788;">GetStyle</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #000040;">&amp;</span> WS_VISIBLE<span style="color: #008000;">&#41;</span><span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>
 m_wndEdRTF.<span style="color: #007788;">SetRedraw</span><span style="color: #008000;">&#40;</span>FALSE<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
 m_wndEdRTF.<span style="color: #007788;">SetWindowText</span><span style="color: #008000;">&#40;</span>_T<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Line 1<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Line 2<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Line 3<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>Line 4&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
 m_wndEdRTF.<span style="color: #007788;">SetSel</span><span style="color: #008000;">&#40;</span><span style="color: #0000dd;">0</span>,<span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
 m_wndEdRTF.<span style="color: #007788;">SetRedraw</span><span style="color: #008000;">&#40;</span>TRUE<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
 m_wndEdRTF.<span style="color: #007788;">Invalidate</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
 <span style="color: #0000ff;">bool</span> bIsVisible <span style="color: #000080;">=</span> <span style="color: #008000;">&#40;</span>m_wndEdRTF.<span style="color: #007788;">GetStyle</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #000040;">&amp;</span> WS_VISIBLE<span style="color: #008000;">&#41;</span><span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>
&nbsp;
 <span style="color: #666666;">// Check if the visible state changed</span>
  <span style="color: #0000ff;">if</span> <span style="color: #008000;">&#40;</span>bIsVisible<span style="color: #000040;">!</span><span style="color: #000080;">=</span>bWasVisible<span style="color: #008000;">&#41;</span>
  AfxMessageBox<span style="color: #008000;">&#40;</span>_T<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;The visible state of the RTF control changed!&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p lang="cpp"><strong>Nachtrag 16.01.2010 (Danke Sven für Deinen produktiven Kommentar):<br />
</strong>Auch andere Controls wie <em>Button</em>-, <em>Static</em>- und <em>Edit</em>-Controls verändern den Visible Status wenn <em>WM_SETREDRAW </em>angewendet wird. Einzig <em>Listbox</em>- und <em>Combobox</em>-Controls behalten den Visiblestatus korrekt bei <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F&amp;title=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control&amp;annotation=Ich%20habe%20eine%20relativ%20komplexe%20UI%2C%20die%20auch%20dynamisch%20Controls%20erzeugt.%20In%20diese%20Controls%20werden%20auch%20zum%20Teil%20Massen%20an%20Daten%20hineingeschoben.%20Damit%20alle%20Controls%20zeitgleich%20erst%20die%20Daten%20pr%C3%A4sentieren%20verwende%20ich%20eine%20einfache%20Methode%2C%20die%20aus%20al" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F&amp;title=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control&amp;notes=Ich%20habe%20eine%20relativ%20komplexe%20UI%2C%20die%20auch%20dynamisch%20Controls%20erzeugt.%20In%20diese%20Controls%20werden%20auch%20zum%20Teil%20Massen%20an%20Daten%20hineingeschoben.%20Damit%20alle%20Controls%20zeitgleich%20erst%20die%20Daten%20pr%C3%A4sentieren%20verwende%20ich%20eine%20einfache%20Methode%2C%20die%20aus%20al" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F&amp;bm_description=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F&amp;t=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F&amp;title=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Bug%20in%20der%20Windows%20UI%3A%20SetRedraw%20ver%C3%A4ndert%20WS_VISIBLE%20Stil%20in%20einem%20RTF%20Control%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F14%2Fbug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2009/03/18/lvm_getsubitemrect-mit-lvir_icon-liefert-andere-ergebnisse-unter-vista-als-unter-xp/" title="LVM_GETSUBITEMRECT mit LVIR_ICON liefert andere Ergebnisse unter Vista als unter XP (Mi 18. Mrz 2009)">LVM_GETSUBITEMRECT mit LVIR_ICON liefert andere Ergebnisse unter Vista als unter XP</a> (5)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/12/07/aus-zwei-mach-eins-wie-man-zwei-cursor-kombinieren-kann/" title="Aus zwei mach eins: Wie man zwei Cursor kombinieren kann (So 07. Dez 2008)">Aus zwei mach eins: Wie man zwei Cursor kombinieren kann</a> (5)</li>
	<li><a href="http://blog.m-ri.de/index.php/2010/01/23/was-denn-nun-switchtothread-sleep0-sleep1-2/" title="Was denn nun SwitchToThread(), Sleep(0), Sleep(1)? (Sa 23. Jan 2010)">Was denn nun SwitchToThread(), Sleep(0), Sleep(1)?</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/01/14/bug-in-windows-ui-setredraw-veraendert-ws_visible-stil-in-einem-rtf-control/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Nett: Windows 7 und sein GodMode ;)</title>
		<link>http://blog.m-ri.de/index.php/2010/01/07/nett-windows-7-und-sein-godmode/</link>
		<comments>http://blog.m-ri.de/index.php/2010/01/07/nett-windows-7-und-sein-godmode/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 07:20:27 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Vista]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=575</guid>
		<description><![CDATA[<p>Alleine der Name macht einen ja schon neugierig&#8230;</p>
<p>Was verbirgt sich dahinter?<br />
Nichts anderes als eine Explorer Ansicht, die alles aus den <em>Systemsteuerungspanels</em> in einer Liste anzeigt. Nett&#8230;</p>
<p>Wie macht man das?</p>
<ol>
<li>Man legt auf dem Desktop (oder sonst wo) ein neues Verzeichnis an.</li>
<li>Dieses Verzeichnis benennt man dann um in <strong><em>GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}<br />
</em></strong>Wobei der Name vor dem Punkt keine Rolle spielt. Es geht nur um die Extension und die GUID.</li>
<li>Fertig! Das Symbol verändert sich dann auf das Symbol der <em>Systemsteuerung</em>.</li>
</ol>
<p>Gefunden in: <a href="http://news.cnet.com/8301-13860_3-10423985-56.html">Understanding Windows 7&#8217;s &#8216;GodMode&#8217;</a></p>
<p><strong>Nachtrag 1: </strong>Das Ganze geht sogar unter Vista 32bit!<strong><br />
Nachtrag 2: </strong>Es gibt Meldungen, dass dieser Link auf dem Desktop eines <em>Vista 64bit </em>Systems den Explorer zum Absturz bringt!<br />
Evtl. sollte man den Ordner testweise in diesem Fall erstmal in einem Unterordner anlegen.<strong><br />
Nachtrag 3: </strong>Auch Kay Giza berichtete ausführlich über diesen Modus, ich hatte dies allerdings übersehen.<br />
<a href="http://www.giza-blog.de/Windows7VistaErweiterteSystemsteuerungAktivierenED7BA4708E54465E825C99712043E01C.aspx">http://www.giza-blog.de/Windows7VistaErweiterteSystemsteuerungAktivierenED7BA4708E54465E825C99712043E01C.aspx</a></p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F&amp;title=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29&amp;annotation=Alleine%20der%20Name%20macht%20einen%20ja%20schon%20neugierig...%0D%0A%0D%0AWas%20verbirgt%20sich%20dahinter%3F%0D%0ANichts%20anderes%20als%20eine%20Explorer%20Ansicht%2C%20die%20alles%20aus%20den%20Systemsteuerungspanels%20in%20einer%20Liste%20anzeigt.%20Nett...%0D%0A%0D%0AWie%20macht%20man%20das%3F%0D%0A%0D%0A%09Man%20legt%20auf%20dem%20Desktop%20%28" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F&amp;title=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29&amp;notes=Alleine%20der%20Name%20macht%20einen%20ja%20schon%20neugierig...%0D%0A%0D%0AWas%20verbirgt%20sich%20dahinter%3F%0D%0ANichts%20anderes%20als%20eine%20Explorer%20Ansicht%2C%20die%20alles%20aus%20den%20Systemsteuerungspanels%20in%20einer%20Liste%20anzeigt.%20Nett...%0D%0A%0D%0AWie%20macht%20man%20das%3F%0D%0A%0D%0A%09Man%20legt%20auf%20dem%20Desktop%20%28" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F&amp;bm_description=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F&amp;t=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F&amp;title=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Nett%3A%20Windows%207%20und%20sein%20GodMode%20%3B%29%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F07%2Fnett-windows-7-und-sein-godmode%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2010/02/01/mein-baby-ist-nun-kompatibel-mit-windows-7/" title="Mein &#8220;Baby&#8221; ist nun &#8220;Kompatibel mit Windows 7&#8243; (Mo 01. Feb 2010)">Mein &#8220;Baby&#8221; ist nun &#8220;Kompatibel mit Windows 7&#8243;</a> (2)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/12/13/installation-aelterer-software-auf-windows-vista-oder-windows-7/" title="Installation älterer Software auf Windows-Vista oder Windows 7 (So 13. Dez 2009)">Installation älterer Software auf Windows-Vista oder Windows 7</a> (3)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/12/08/windows-integrity-control-schreibzugriff-auf-eine-named-pipe-eines-services-ueber-anonymen-zugriff-auf-vista-windows-2008-server-und-windows-7/" title="Windows Integrity Control: Schreibzugriff auf eine Named Pipe eines Services über anonymen Zugriff auf Vista, Windows 2008 Server und Windows 7 (Di 08. Dez 2009)">Windows Integrity Control: Schreibzugriff auf eine Named Pipe eines Services über anonymen Zugriff auf Vista, Windows 2008 Server und Windows 7</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/01/07/nett-windows-7-und-sein-godmode/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CDialog::SetDefID und DM_SETDEFID, des Tastaturfreunds Liebling</title>
		<link>http://blog.m-ri.de/index.php/2010/01/04/cdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling/</link>
		<comments>http://blog.m-ri.de/index.php/2010/01/04/cdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 16:43:32 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[MFC]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Sonstiges]]></category>
		<category><![CDATA[Windows API]]></category>
		<category><![CDATA[Dialoge]]></category>
		<category><![CDATA[Eingabetaste]]></category>
		<category><![CDATA[Tastatur]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[WinAPI]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=519</guid>
		<description><![CDATA[<p>Die Frage um die Eingabe-Taste in Dialogen und wie man diese &#8220;missbraucht&#8221; (sage ich mal provokant) ist eine regelmäßige Frage in allen Foren.</p>
<p>Die Intention ist oft klar. Man möchte mit der Eingabetaste eine bestimmte Aktion verbinden, die evtl. sehr oft ausgeführt werden soll und nicht den Dialog schließen.<br />
Die üblichen Wege sind schon mehrfach diskutiert worden und auch in meinem Blog finden sich dazu ein <a href="http://blog.m-ri.de/index.php/2008/09/21/die-return-taste-in-dialogen-eine-unendliche-geschichte/">Artikel</a> .</p>
<p>Zu kurz kommt bei dieser Diskussion die Funktion <em><a href="http://msdn.microsoft.com/en-us/library/7sd15kw3(VS.80).aspx">CDialog::SetDefID</a></em> bzw. <em><a href="http://msdn.microsoft.com/en-us/library/ms645413(VS.85).aspx">DM_SETDEFID</a> </em>Nachricht.<br />
Was macht diese Funktion/Nachricht?<br />
Sie definieren die Button-ID, die als Default-Aktion in einem Dialog ausgelöst werden soll und das ist nichts anderes als die Aktion die geschehen, soll wenn die Eingabe-Taste gedrückt wird.<br />
Viele Entwickler definieren einfach <em>OnOK</em> um. Aber das eigentlich tolle ist mit <em>SetDefID</em> den Button in Abhängigkeit der Daten umzusetzen und das hat auch einen visuellen Effekt für den Nutzer.</p>
<p>Mal ein Beispiel:<br />
Wir haben einen Dialog mit zwei List Views. Links Elemente die zur Auswahl stehen, rechts die Elemente in der Reihenfolge, die der Benutzer ausgewählt hat.<br />
Der Mausschubser wird einfach die Einträge auf der linken oder rechten Seite doppelklicken und damit auswählen oder entfernen. Entsprechende Buttons für Hinzufügen und Entfernen wird es auch geben. Man kann also auch links oder rechts markieren und dann den Hinzufügen oder Entfernen Schalter nutzen.</p>
<p>Dem Tastaturnutzer können wir helfen indem wir intelligent <em>CDialog::SetDefID / DM_SETDEFID</em> verwenden. Die Vorgehensweise ist einfach.</p>
<ul>
<li>Wir richten uns nur danach in welchem <em>List View </em>wir uns befinden, d.h. befinden wir uns im linken <em>List View </em>steuern wir den <em>Hinzufügen </em>Schalter, und im rechten <em>List View </em>steuern wir den <em>Entfernen </em>Schalter.</li>
<li>Wird also im linken List View ein Item ausgewählt, setzen wir mit <em>CDialog::SetDefID / DM_SETDEFID </em>die ID des <em>Hinzufügen </em>Schalters.</li>
<li>In dem Moment wird der <em>Hinzufügen </em>Schalter zum <em>Default</em>-Button. Der Nutzer kann nun die Eingabe-Taste drücken und die Items werden in die rechte Box verschoben.</li>
<li>Links liegt jetzt nun noch der Fokus, aber es sind keine Items mehr markiert. D.h. wir setzen nun den Default Button zurück auf <em>IDOK</em>.</li>
<li>Jetzt kann der Nutzer erneut ein Item markieren. Der <em>Default</em>-Button wird wieder der <em>Hinzufügen/Entfernen</em> Schalter und die Eingabetaste macht was der Nutzer gerne hätte.</li>
<li>Ist kein Item mehr markiert schließt die Eingabetaste wieder über <em>IDOK </em>den Dialog.</li>
</ul>
<p>Ohne Maus kann man also mit den Pfeiltasten, der Leertaste (evtl. <em>Strg</em>-Taste) und der Eingabetaste diesen Dialog bedienen. Und das sogar intuitiv, denn der entsprechende Default Button wird ja in der UI schön umrandet und hervorgehoben.<br />
Das freut jeden Tastaturfreund. Und man muss gar nichts groß machen mit der Behandlung Eingabetaste.</p>
<p>Damit das Ganze nicht so abstrakt ist, habe ich <a href="http://blog.m-ri.de/wp-content/uploads/2009/12/TestSetDefDlgID.zip">ein kleines Sample</a> gebaut, dass diese Anwendung zeigt. Es hat keine Implementierung für <em>Drag&amp;Drop </em>aber es macht deutlich, wie man dem Tastaturnutzer entgegen kommen kann indem man die Controls geschickt aktiviert.</p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F&amp;title=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling&amp;annotation=Die%20Frage%20um%20die%20Eingabe-Taste%20in%20Dialogen%20und%20wie%20man%20diese%20%22missbraucht%22%20%28sage%20ich%20mal%20provokant%29%20ist%20eine%20regelm%C3%A4%C3%9Fige%20Frage%20in%20allen%20Foren.%0D%0A%0D%0ADie%20Intention%20ist%20oft%20klar.%20Man%20m%C3%B6chte%20mit%20der%20Eingabetaste%20eine%20bestimmte%20Aktion%20verbinden%2C%20die%20evtl" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F&amp;title=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling&amp;notes=Die%20Frage%20um%20die%20Eingabe-Taste%20in%20Dialogen%20und%20wie%20man%20diese%20%22missbraucht%22%20%28sage%20ich%20mal%20provokant%29%20ist%20eine%20regelm%C3%A4%C3%9Fige%20Frage%20in%20allen%20Foren.%0D%0A%0D%0ADie%20Intention%20ist%20oft%20klar.%20Man%20m%C3%B6chte%20mit%20der%20Eingabetaste%20eine%20bestimmte%20Aktion%20verbinden%2C%20die%20evtl" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F&amp;bm_description=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F&amp;t=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F&amp;title=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=CDialog%3A%3ASetDefID%20und%20DM_SETDEFID%2C%20des%20Tastaturfreunds%20Liebling%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2010%2F01%2F04%2Fcdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2008/12/07/aus-zwei-mach-eins-wie-man-zwei-cursor-kombinieren-kann/" title="Aus zwei mach eins: Wie man zwei Cursor kombinieren kann (So 07. Dez 2008)">Aus zwei mach eins: Wie man zwei Cursor kombinieren kann</a> (5)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/08/09/vs-tippstricks-einfache-ausgabe-mit-trace-auch-in-der-release-version/" title="VS-Tipps&#038;Tricks: Einfache Debug-Ausgabe mit TRACE auch in der Release Version (So 09. Aug 2009)">VS-Tipps&#038;Tricks: Einfache Debug-Ausgabe mit TRACE auch in der Release Version</a> (9)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/11/04/vs-tipps-tricks-heap-bugs-finden-teil-3/" title="VS Tipps &#038; Tricks: Heap Bugs finden (Teil 3) (Di 04. Nov 2008)">VS Tipps &#038; Tricks: Heap Bugs finden (Teil 3)</a> (0)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2010/01/04/cdialogsetdefid-und-dm_setdefid-des-tastaturfreunds-liebling/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MD 81335 DVD-Recorder Laufwerk erfolgreich in ein LG-GSA-H44N getauscht</title>
		<link>http://blog.m-ri.de/index.php/2009/12/28/md-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht/</link>
		<comments>http://blog.m-ri.de/index.php/2009/12/28/md-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 15:16:01 +0000</pubDate>
		<dc:creator>Martin Richter</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[MD81335]]></category>
		<category><![CDATA[Medion]]></category>

		<guid isPermaLink="false">http://blog.m-ri.de/?p=551</guid>
		<description><![CDATA[<p>Ich habe schon seit langer Zeit einen MD 81335 HD/DVD-Recorder (Baugleich LG RH188). Ich liebe das Ding, weil ich dann das sehen kann was ich will, ohne Werbung und dann, wenn es in meinen Zeitplan passt.<br />
Den DVD Recorder habe ich nie benutzt, aber den DVD-Player.<br />
Seit einiger Zeit dauerte es immer länger bis DVDs erkannt wurden. Besonders neuere DVDs mochte das MD 81335 gar nicht mehr lesen. Sehr zum Leidwesen meiner Tochter.</p>
<p>Nach etwas Recherche im Netz kam ich zu dem Schluss, dass man DVD Laufwerk einfach vergessen kann. Defekt <img src='http://blog.m-ri.de/wp-includes/images/smilies/icon_exclaim.gif' alt=':!:' class='wp-smiley' /> </p>
<p>Ein entsprechendes Original-Laufwerk war nicht aufzutreiben und auch nicht über den Elektronik-Fachhändler meines Vertrauens. Wenn man aber weiß, dass das MD 81335 ein baugleiches LG-RH188H ist, dann findet man im Netz doch einige hilfreiche Tipps zu diesem Gerät.</p>
<p>Auf der Seite <a href="http://ifndef.altervista.org/index_eng.html">http://ifndef.altervista.org/index_eng.html</a> habe ich dann einige Anleitungen gefunden, wie man das DVD-Laufwerk tauschen kann gegen andere LG kompatible Laufwerke. Ich habe mich bei den vorgeschlagenen Möglichkeiten für ein LG-GSA-H44N entschieden, dass ich für ein Paar Euros auf Ebay ersteigern konnte.</p>
<p>Der Umbau ging dank der tollen bebilderten Anleitung perfekt. Alleine der erste Start des Rekorders klappte nicht. Der alte Recorder hatte keinen Jumper auf dem Master/Slave Selektor gesetzt. So habe ich auch das neue LG-GSA-H44N eingebaut. Dann startet der Rekorder allerdings nicht. Nachdem ich dann erst dachte ich habe einen Fehler beim Zusammenbauen gemacht hatte, habe ich doch noch mal den Jumper gesetzt auf der Master Position. Siehe da, alles geht wieder und DVDs können auch wieder abgespielt werden.</p>
<hr /><small>Copyright &copy; 2008 Martin Richter<br />Dieser Feed ist nur für den persönlichen, nicht gewerblichen Gebrauch bestimmt. Eine Verwendung dieses Feeds bzw. der hier veröffentlichten Beiträge auf anderen Webseiten bedarf der ausdrücklichen Genehmigung des Autors.<br />(Digital Fingerprint: bdafe67664ea5aacaab71f8c0a581adf)</small>



	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F&amp;title=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht&amp;annotation=Ich%20habe%20schon%20seit%20langer%20Zeit%20einen%20MD%2081335%20HD%2FDVD-Recorder%20%28Baugleich%20LG%20RH188%29.%20Ich%20liebe%20das%20Ding%2C%20weil%20ich%20dann%20das%20sehen%20kann%20was%20ich%20will%2C%20ohne%20Werbung%20und%20dann%2C%20wenn%20es%20in%20meinen%20Zeitplan%20passt.%0D%0ADen%20DVD%20Recorder%20habe%20ich%20nie%20benutzt%2C%20aber%20" title="Google Bookmarks"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F&amp;title=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht&amp;notes=Ich%20habe%20schon%20seit%20langer%20Zeit%20einen%20MD%2081335%20HD%2FDVD-Recorder%20%28Baugleich%20LG%20RH188%29.%20Ich%20liebe%20das%20Ding%2C%20weil%20ich%20dann%20das%20sehen%20kann%20was%20ich%20will%2C%20ohne%20Werbung%20und%20dann%2C%20wenn%20es%20in%20meinen%20Zeitplan%20passt.%0D%0ADen%20DVD%20Recorder%20habe%20ich%20nie%20benutzt%2C%20aber%20" title="del.icio.us"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F&amp;bm_description=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht&amp;plugin=soc" title="MisterWong.DE"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F" title="Technorati"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F&amp;t=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht" title="Facebook"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F&amp;title=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht" title="Live"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=MD%2081335%20DVD-Recorder%20Laufwerk%20erfolgreich%20in%20ein%20LG-GSA-H44N%20getauscht%20-%20http%3A%2F%2Fblog.m-ri.de%2Findex.php%2F2009%2F12%2F28%2Fmd-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht%2F" title="Twitter"><img src="http://blog.m-ri.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" /></a>


<br/><br/>
	<h4>Themenverwandte Beiträge:</h4>
	<ul class="st-related-posts">
	<li><a href="http://blog.m-ri.de/index.php/2009/02/04/wo-bitte-ist-der-reset-schalter/" title="Wo bitte ist der Reset-Schalter? (Mi 04. Feb 2009)">Wo bitte ist der Reset-Schalter?</a> (4)</li>
	<li><a href="http://blog.m-ri.de/index.php/2008/03/28/wie-man-eine-tastatur-an-einem-samsung-r40-tauscht/" title="Wie man eine Tastatur an einem Samsung R40 tauscht (Fr 28. Mrz 2008)">Wie man eine Tastatur an einem Samsung R40 tauscht</a> (14)</li>
	<li><a href="http://blog.m-ri.de/index.php/2009/06/04/vista-nach-installation-von-sp2-wird-immer-wieder-nach-einem-wpd-geraetetreiber-gesucht/" title="Vista: Nach Installation von SP2 wird immer wieder nach einem WPD-Gerätetreiber gesucht (Do 04. Jun 2009)">Vista: Nach Installation von SP2 wird immer wieder nach einem WPD-Gerätetreiber gesucht</a> (2)</li>
</ul>

]]></description>
		<wfw:commentRss>http://blog.m-ri.de/index.php/2009/12/28/md-81335-dvd-recorder-laufwerk-erfolgreich-in-ein-lg-gsa-h44n-getauscht/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
