<?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>oliana.de &#187; Windows Mobile</title>
	<atom:link href="http://oliana.de/blog/tag/windows-mobile/feed/" rel="self" type="application/rss+xml" />
	<link>http://oliana.de/blog</link>
	<description>Das Problem zwischen Stuhl und Bildschirm</description>
	<lastBuildDate>Sun, 29 Jan 2012 17:41:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>LiveMesh for Windows Mobile</title>
		<link>http://oliana.de/blog/2009/07/31/livemesh-for-windows-mobile/</link>
		<comments>http://oliana.de/blog/2009/07/31/livemesh-for-windows-mobile/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 14:08:49 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Live-Mesh]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/2009/07/31/livemesh-for-windows-mobile/</guid>
		<description><![CDATA[Wie es scheint gibt es die Möglichkeit Livemesh für Windows Mobile zu benutzen. Und das ganze scheint es auch schon seit Ende 2008 zu geben – und ich hab immer vergeblich gesucht… Schaut einfach mal hier vorbei und klickt auf den Promo-Link. Dann kann man sich die CAB-Datei herunterladen und installieren. Zusätzlich gibt es noch [...]]]></description>
			<content:encoded><![CDATA[<p>Wie es scheint gibt es die Möglichkeit Livemesh für Windows Mobile zu benutzen. Und das ganze scheint es auch schon seit Ende 2008 zu geben – und ich hab immer vergeblich gesucht… </p>
<p> <span id="more-248"></span>
<p>Schaut einfach mal <a href="http://blogs.msdn.com/livemesh/archive/2008/12/09/expanded-live-mesh-for-mobile-ctp.aspx">hier</a> vorbei und klickt auf den Promo-Link. Dann kann man sich die CAB-Datei herunterladen und installieren. </p>
<p>Zusätzlich gibt es noch eine für <a href="http://m.mesh.com">mobile Geräte optimierte Webseite</a> die man auch für den Zugriff auf sein Mesh benutzen kann.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:83da0ceb-5ec7-4ee4-8370-2ec6f32bce43" class="wlWriterEditableSmartContent">Technorati-Tags: <a href="http://technorati.com/tags/Live-Mesh" rel="tag">Live-Mesh</a>,<a href="http://technorati.com/tags/Windows+Mobile" rel="tag">Windows Mobile</a></div>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2009/07/31/livemesh-for-windows-mobile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>kleines My Phone review</title>
		<link>http://oliana.de/blog/2009/03/10/kleines-my-phone-review/</link>
		<comments>http://oliana.de/blog/2009/03/10/kleines-my-phone-review/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 22:21:09 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Anwendungen]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/2009/03/10/kleines-my-phone-review/</guid>
		<description><![CDATA[Gerade bin ich in den Genuss gekommen My Phone testen zu dürfen. Das&#160; ganze ist ein Dienst um Daten von einem Windows Mobile Gerät mit der “Wolke” zu synchronisieren und online zu bearbeiten. Es ist sehr praktisch um Daten zwischen Telefonen zu synchronisieren und persönliche Daten zu sichern. Es stehen jedem Nutzer 200 MB zur [...]]]></description>
			<content:encoded><![CDATA[<p>Gerade bin ich in den Genuss gekommen <a href="http://myphone.microsoft.com">My Phone</a> testen zu dürfen. Das&#160; ganze ist ein Dienst um Daten von einem Windows Mobile Gerät mit der “Wolke” zu synchronisieren und online zu bearbeiten. Es ist sehr praktisch um Daten zwischen Telefonen zu synchronisieren und persönliche Daten zu sichern.</p>
<p> <span id="more-171"></span>
<p>Es stehen jedem Nutzer 200 MB zur Verfügung um folgende Inhalte zu synchronisieren:</p>
<ul>
<li>
<p>Kontakte</p>
</li>
<li>
<p>Kalender</p>
</li>
<li>Aufgaben </li>
<li>SMS </li>
<li>Fotos </li>
<li>Videos </li>
<li>Musik </li>
<li>Dokumente </li>
</ul>
<p>Das ganze funktioniert vollautomatisch oder manuell – je nach Einstellung. Das schöne ist, dass hier (im Gegensatz zu einem Exchange-Konto) auch Dateien und SMS synchronisiert werden und so einfach auf ein neues Gerät (bzw. auf das alte nachdem man es zurückgesetzt hat…) kopiert werden können.</p>
<p>Die synchronisierten Daten kann man dann über eine Weboberfläche bearbeiten (u.a. auch löschen) und “zurücksynchronisieren” lassen. Schön ist hierbei, dass gelöschte Sachen nicht verschwinden sondern in einer Art Papierkorb landen, von wo aus man die Sachen wiederherstellen kann.</p>
<p>Es ist noch im Beta-Stadium, was man z.B. daran merkt, dass Serientermine noch nicht richtig angezeigt werden. Im großen und ganzen ist das jedoch eine sehr gelungene Geschichte wenn man als Privatperson keinen Exchange zur Verfügung hat, aber trotzdem seine Sachen sichern will. Mal schauen was da noch kommt!</p>
<p>Ich hatte zwar ein paar bedenken wegen der Bandbreiten-Nutzung, da ich nur ein kleines Inklusiv-Paket für UMTS habe, aber es wird recht wenig übertragen. Bei ca. 200 Kontakten und jeder Menge Kalender-Einträgen wurden nur 240KB übertragen. Das ist doch recht übersichtlich.</p>
<p>Hier noch ein kleiner Screenshot der sehr einfach und übersichtlich gehaltenen Weboberfläche:</p>
<p><a href="http://oliana.de/blog/wp-content/image26.png" rel="lightbox"><img title="image" style="border-top-width: 0px; display: block; border-left-width: 0px; float: none; border-bottom-width: 0px; margin-left: auto; margin-right: auto; border-right-width: 0px" height="236" alt="image" src="http://oliana.de/blog/wp-content/image-thumb26.png" width="244" border="0" /></a></p>
<p>Und noch ein paar von der Oberfläche auf dem Gerät: <a href="http://oliana.de/blog/wp-content/screen03.png" rel="lightbox"><img title="Screen03" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="244" alt="Screen03" src="http://oliana.de/blog/wp-content/screen03-thumb.png" width="184" border="0" /></a><a href="http://oliana.de/blog/wp-content/screen01.png" rel="lightbox"><img title="Screen01" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="244" alt="Screen01" src="http://oliana.de/blog/wp-content/screen01-thumb.png" width="184" border="0" /></a> <a href="http://oliana.de/blog/wp-content/screen02.png" rel="lightbox"><img title="Screen02" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="244" alt="Screen02" src="http://oliana.de/blog/wp-content/screen02-thumb.png" width="184" border="0" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2009/03/10/kleines-my-phone-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Status eines Windows Mobile Ger&#228;ts pr&#252;fen</title>
		<link>http://oliana.de/blog/2009/02/16/status-eines-windows-mobile-gerts-prfen/</link>
		<comments>http://oliana.de/blog/2009/02/16/status-eines-windows-mobile-gerts-prfen/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 22:53:42 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[.Net CF]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/2009/02/16/status-eines-windows-mobile-gerts-prfen/</guid>
		<description><![CDATA[Manchmal sieht man den Wald vor lauter Bäumen nicht… Ich hatte das Problem, dass man während der Synchronisierung mit Activesync nicht auf synchronisierte Dateien zugreifen kann. Da habe ich dann angefangen mit Schleifen zu arbeiten um zu prüfen wann der Lock endlich weg ist. Dabei gibt es einen so schönen und einfachen Weg. Die Klasse [...]]]></description>
			<content:encoded><![CDATA[<p>Manchmal sieht man den Wald vor lauter Bäumen nicht… Ich hatte das Problem, dass man während der Synchronisierung mit Activesync nicht auf synchronisierte Dateien zugreifen kann. Da habe ich dann angefangen mit Schleifen zu arbeiten um zu prüfen wann der Lock endlich weg ist. Dabei gibt es einen so schönen und einfachen Weg.</p>
<p> <span id="more-162"></span>
<p>Die Klasse SystemState in <font size="2">Microsoft.WindowsMobile.Status nimmt einem in der Hinsicht jegliche Arbeit ab. Zunächst muss man also den entsprechenden Verweis im Projekt einfügen und kann dann sehr einfach den Status prüfen. Diese Zeile prüft z.B. ob ActiveSync gerade etwas macht:</font></p>
<div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &#39;Courier New&#39;, courier, monospace; background-color: #f4f4f4">
<div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none">
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"><span style="color: #606060">   1:</span> <span style="color: #0000ff">if</span>(SystemState.ActiveSyncStatus == ActiveSyncStatus.Synchronizing)</pre>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"><span style="color: #606060">   2:</span> {</pre>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"><span style="color: #606060">   3:</span>     MessageBox.Show(<span style="color: #006080">&quot;Synching!&quot;</span>);</pre>
<pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"><span style="color: #606060">   4:</span> }</pre>
</p></div>
</div>
<p><font size="2"></font></p>
<p>Mit der SystemState Klasse kann man einiges machen und in der Hinsicht lohnt es sich wirklich mal die Doku durchzuschauen um zu sehen was einem da alles zur Verfügung steht. Ich werde dort jetzt auf jeden Fall öfter rein schauen…</p>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2009/02/16/status-eines-windows-mobile-gerts-prfen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Server CE 3.5 Datenbank komprimieren</title>
		<link>http://oliana.de/blog/2009/02/16/sql-server-ce-35-datenbank-komprimieren/</link>
		<comments>http://oliana.de/blog/2009/02/16/sql-server-ce-35-datenbank-komprimieren/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 22:43:16 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[.Net CF]]></category>
		<category><![CDATA[SQL Server CE]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/2009/02/16/sql-server-ce-35-datenbank-komprimieren/</guid>
		<description><![CDATA[Gerade hatte ich einige Probleme eine SQL-Server CE Datenbank auf einem Windows Mobile Gerät zu komprimieren (durch SQLCeEngine.Shrink()), da dort die Meldung kam, dass angeblich eine Komponente fehlte. Das Interessante dabei war, dass das ganze in dem Emulator wunderbar funktionierte. Letztendlich habe ich herausgefunden, dass es daran liegt, dass man die Replikations-Komponente zum Komprimieren braucht. [...]]]></description>
			<content:encoded><![CDATA[<p>Gerade hatte ich einige Probleme eine SQL-Server CE Datenbank auf einem Windows Mobile Gerät zu komprimieren (durch SQLCeEngine.Shrink()), da dort die Meldung kam, dass angeblich eine Komponente fehlte. Das Interessante dabei war, dass das ganze in dem Emulator wunderbar funktionierte.<span id="more-160"></span></p>
<p>Letztendlich habe ich herausgefunden, dass es daran liegt, dass man die Replikations-Komponente zum Komprimieren braucht. Interessanterweise wird diese im Emulator beim Debuggen direkt mit installiert, wohingegen diese auf dem Gerät natürlich nicht standardmäßig bei ist.</p>
<p>Um diese zu installieren kann man die “sqlce.repl.wce5.armv4i.cab” im folgenden Verzeichnis benutzen.</p>
<div>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices\
wce500\armv4i</pre>
</div>
<p>Anschließend kann mit diesen Zeilen die Datenbank komprimiert werden:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #606060">   1:</span> engine = <span style="color: #0000ff">new</span> SqlCeEngine(<span style="color: #006080">"ConnectionString"</span>);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060">   2:</span> engine.Shrink();</pre>
</div>
</div>
<p>Eine Sache auf die man dabei achten sollte ist, dass es Probleme geben kann, wenn die Datenbank-Datei in einem mit Activesync synchronisierten Verzeichnis liegt – dann kann es sein, dass die Datei durch ActiveSync gesperrt ist. Die Lösung für dieses Problem kommt im nächsten Post <img src='http://oliana.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2009/02/16/sql-server-ce-35-datenbank-komprimieren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bewegungssensitive Tastensperre f&#252;r HTC Diamond</title>
		<link>http://oliana.de/blog/2008/12/03/bewegungssensitive-tastensperre-fr-htc-diamond/</link>
		<comments>http://oliana.de/blog/2008/12/03/bewegungssensitive-tastensperre-fr-htc-diamond/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 15:48:02 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Anwendungen]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Diamond Pro]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/?p=153</guid>
		<description><![CDATA[Heute habe ich mal mein Telefon (HTC Diamond Pro) zurückgesetzt und dabei mal die Installation des genialen (aber Ressourcen-Fressenden) Tools S2U2 unterlassen. Dabei ist mir aufgefallen wie gut das Gerät ohne S2U2 läuft. Jetzt blieb für mich also noch das Problem der versehentlich in der Tasche angenommen Anrufe zu lösen. Dabei bin ich dann auf [...]]]></description>
			<content:encoded><![CDATA[<p>Heute habe ich mal mein Telefon (HTC Diamond Pro) zurückgesetzt und dabei mal die Installation des genialen (aber Ressourcen-Fressenden) Tools <a href="http://s2u2.eqvipage.dk/S2U2-index.html" target="_blank">S2U2</a> unterlassen. Dabei ist mir aufgefallen wie gut das Gerät ohne <a href="http://s2u2.eqvipage.dk/S2U2-index.html" target="_blank">S2U2</a> läuft. Jetzt blieb für mich also noch das Problem der versehentlich in der Tasche angenommen Anrufe zu lösen. Dabei bin ich dann auf <a href="http://sourceforge.net/project/showfiles.php?group_id=238616&amp;package_id=290047" target="_blank">SensorLock</a> gestoßen. Das Ding ist einfach genial!</p>
<p> <span id="more-153"></span>Es dient nur dem Zweck der Tastensperre und das auf eine sehr elegante Weise. Zum sperren / entsperren des Geräts muss das Telefon gedreht werden. Das ganze könnt Ihr euch in dem Video unten ansehen. Das schöne ist, dass das ganze auch gut konfiguriert werden kann:
</p>
<ul>
<li>Es es ist so einstellbar, dass die Tasten bei einem ankommenden Anruf nicht gesperrt werden, so dass man Anrufe direkt mit den Tasten annehmen kann </li>
<li>Die Bewegung kann eingestellt werden (Allerdings nur Drehungen über die Längs-Achse </li>
<li>Es verbraucht kaum Ressourcen! </li>
</ul>
<p>Das ganze ist zwar nicht so schick wie S2U2, aber sehr funktional und vor allem schlank.</p>
<p>Hier noch ein Video, dass die Tastensperre in Aktion zeigt:</p>
<div class="wlWriterEditableSmartContent" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:05880271-0fcc-4f3a-ad9d-1c942cc7a688" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">
<div id="767aaa15-2e90-4bf5-b438-3e14e0429321" style="margin: 0px; padding: 0px; display: inline;">
<div><a href="http://www.youtube.com/watch?v=rw_bztlQuZw" target="_new"><img src="http://oliana.de/blog/wp-content/BewegungssensitiveTastensperrefrHTCDiamo_E96E/video1a4d216eab82.jpg" style="border-style: none" galleryimg="no" onload="var downlevelDiv = document.getElementById('767aaa15-2e90-4bf5-b438-3e14e0429321'); downlevelDiv.innerHTML = &quot;&lt;div&gt;&lt;object width=\&quot;425\&quot; height=\&quot;355\&quot;&gt;&lt;param name=\&quot;movie\&quot; value=\&quot;http://www.youtube.com/v/rw_bztlQuZw&amp;hl=en\&quot;&gt;&lt;\/param&gt;&lt;embed src=\&quot;http://www.youtube.com/v/rw_bztlQuZw&amp;hl=en\&quot; type=\&quot;application/x-shockwave-flash\&quot; width=\&quot;425\&quot; height=\&quot;355\&quot;&gt;&lt;\/embed&gt;&lt;\/object&gt;&lt;\/div&gt;&quot;;" alt=""/></a></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2008/12/03/bewegungssensitive-tastensperre-fr-htc-diamond/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vorgegebene Verbindungen beim XDA Diamond pro l&#246;schen</title>
		<link>http://oliana.de/blog/2008/09/29/vorgegebene-verbindungen-beim-xda-diamond-pro-lschen/</link>
		<comments>http://oliana.de/blog/2008/09/29/vorgegebene-verbindungen-beim-xda-diamond-pro-lschen/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 20:00:30 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Anwendungen]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Diamond Pro]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/?p=138</guid>
		<description><![CDATA[Ich habe in meinem letzten Eintrag ja schon beschrieben, dass es mehrere Einträge für die Internet-Verbindung gibt und man das ganze auf einen reduzieren sollte. Um die o2 Surf Verbindung zu löschen reicht es allerdings nicht, diese aus den Systemeinstellungen zu löschen. Zusätzlich muss noch in die Registry eingegriffen werden, da ansonsten Programme wie z.B. [...]]]></description>
			<content:encoded><![CDATA[<p>Ich habe in meinem <a href="http://oliana.de/blog/2008/09/12/meinung-tips-und-tricks-zum-htc-touch-diamond-pro/" target="_blank">letzten Eintrag</a> ja schon beschrieben, dass es mehrere Einträge für die Internet-Verbindung gibt und man das ganze auf einen reduzieren sollte. Um die o2 Surf Verbindung zu löschen reicht es allerdings nicht, diese aus den Systemeinstellungen zu löschen. Zusätzlich muss noch in die Registry eingegriffen werden, da ansonsten Programme wie z.B. die Internetfreigabe diese nach einem Neustart immer noch verwenden.<span id="more-138"></span></p>
<p><strong>ACHTUNG: Man kann in der Registry viel kaputt machen! Alle Angaben hier sind ohne Gewähr!</strong></p>
<p>Zunächst braucht man einen Registry-Editor wie z.B. den <a href="http://www.ghisler.com/pocketpc.htm" target="_blank">Total commander</a> um diese zu bearbeiten.</p>
<p>Dann öffnet man folgenden Schlüssel:</p>
<pre>HKEY_CURRENT_USER\Comm\RasBook</pre>
<p>und macht eine Sicherung des Schlüssels “<strong>o2 Surf</strong>” und löscht diesen danach.</p>
<p>Dann sucht man den Schlüssel,</p>
<pre>HKEY_LOCAL_MACHINE\Comm\ConnMgr\Providers\{7C4B7A38-5FF7-4bc1-80F6-5DA7870BB1AA}\Connections</pre>
<p>macht wieder eine Sicherung des Schlüssels <strong>“o2 Surf”</strong> und löscht diesen dann ebenfalls.</p>
<p>Jetzt sind alle Einträge zu der Verbindung entfernt und man kann sicher sein, dass alle Programme dieselbe Verbindung nutzen, welche vom <a href="http://www.spbsoftwarehouse.com/products/gprsmonitor/?de" target="_blank">GPRS Monitor</a> überwacht wird.</p>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2008/09/29/vorgegebene-verbindungen-beim-xda-diamond-pro-lschen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Meinung, Tips und Tricks zum HTC Touch Diamond Pro</title>
		<link>http://oliana.de/blog/2008/09/12/meinung-tips-und-tricks-zum-htc-touch-diamond-pro/</link>
		<comments>http://oliana.de/blog/2008/09/12/meinung-tips-und-tricks-zum-htc-touch-diamond-pro/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 22:35:58 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Diamond Pro]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/?p=131</guid>
		<description><![CDATA[Vor zwei Tagen habe ich mein neues Spielzeug abgeholt und direkt mal ein bissel damit gespielt. Ich muss wirklich sagen, dass das Gerät ein recht gelungener Wurf von HTC ist. Teilweise muss man zwar sagen, dass die Bedienung der Touch Flo Oberfläche mit meinen Pranken etwas schwer fällt, aber man gewöhnt sich daran. Genauso sieht [...]]]></description>
			<content:encoded><![CDATA[<p>Vor zwei Tagen habe ich mein neues Spielzeug abgeholt und direkt mal ein bissel damit gespielt. Ich muss wirklich sagen, dass das Gerät ein recht gelungener Wurf von HTC ist.</p>
<p><span id="more-131"></span>Teilweise muss man zwar sagen, dass die Bedienung der Touch Flo Oberfläche mit meinen Pranken etwas schwer fällt, aber man gewöhnt sich daran. Genauso sieht es mit der Tastatur aus. Diese ist zwar auf jeden Fall ein riesen Vorteil im Vergleich zur Bildschirm-Tastatur, aber wenn man zu große Finger hat, muss man sich doch erst daran gewöhnen und ein bisschen Fingerspitzengefühl mitbringen.</p>
<p>Was recht interessant ist, ist dass auf der CD (zumindest bei o2) sehr nützliche Software enthalten ist, die nirgends erwähnt wird. So ist hier sowohl Sprite Backup als auch GPRS-Monitor enthalten. Sprite Backup habe ich noch nicht getestet, aber soll sehr gut funktionieren. GPRS-Monitor hingegen ist ein sehr nützliches Tool wenn man einen Volumen-Basierten Tarif nutzt (Es überwacht auch UMTS-Verbindungen – der Name täuscht etwas). Es überwacht die Verbindung, protokolliert die empfangenen/versendeten Daten und es lassen sich Alarme einstellen wenn ein benutzerdefiniertes Limit pro Tag und/oder Monat überschritten wird.</p>
<p>Was ebenfalls sehr schön ist, ist dass ich nach ein bisschen <a href="http://gidf.de" target="_blank">Suchen</a> einen weg gefunden habe, mit der eingebauten Kamera aufgenommene Bilder direkt mit GPS-Koordinaten aus dem GPS-Empfänger zu versehen. Eine entsprechende Anleitung und weitere Tips sind im <a href="http://www.pocketpc.ch/htc-touch-pro/41942-htc-touch-pro-tipps-und-tricks-tweaks.html" target="_blank">PocketPC.ch Forum</a> unter Punkt 9 zu finden. Die anderen Tips dort habe ich noch nicht ausprobiert, da Sie für mich nur bedingt nützlich sind.</p>
<h4>Update:</h4>
<p>Auch sehr interessant ist <a href="http://www.ppc-welt.info/community/showthread.php?t=131907" target="_blank">diese Seite</a> auf der man einige Tweaks erfährt. Z.B. Steht dort wie man die fest eingetragenen Programme (zumindest bei dem o2 ROM der RSS-Reader, Google-Maps, …) in der Programmliste anpassen kann. Man kann dann also Einträge löschen und auch mehr als 18 eintragen.</p>
<h4>Update 29.09.2008:</h4>
<p>Man sollte sich überlegen die von o2 angelegte Verbindung o2 surf zu löschen, da ansonsten einige Programme (wie z.B. die Verbindungsfreigabe) darüber laufen und der GPRS-Monitor nur eine Verbindung gleichzeitig überwachen kann. Man sollte nicht die Verbindung o2 internet löschen, da diese für personalisierte Dienste von o2 gebraucht wird.</p>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2008/09/12/meinung-tips-und-tricks-zum-htc-touch-diamond-pro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatische Höhe für Labels im Compact Framework auf dem Pocket PC</title>
		<link>http://oliana.de/blog/2008/05/27/automatische-hohe-fur-labels-im-compact-framework-auf-dem-pocket-pc/</link>
		<comments>http://oliana.de/blog/2008/05/27/automatische-hohe-fur-labels-im-compact-framework-auf-dem-pocket-pc/#comments</comments>
		<pubDate>Tue, 27 May 2008 19:50:18 +0000</pubDate>
		<dc:creator>Denis</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[.Net CF]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://oliana.de/blog/?p=94</guid>
		<description><![CDATA[Für ein kleines Projekt für Windows CE habe ich eine Methode gesucht um die Höhe eines Labels anhand des Inhalts automatisch zu setzen. Dabei habe ich hier eine Lösung in Visual Basic gefunden. Diese Lösung ist eigentlich recht elegant, da Sie API-Funktionen benutzt um das Rectangle zu zeichnen und die Höhe genau so zu bestimmen [...]]]></description>
			<content:encoded><![CDATA[<p>Für ein kleines Projekt für Windows CE habe ich eine Methode gesucht um die Höhe eines Labels anhand des Inhalts automatisch zu setzen. Dabei habe ich <a href="http://gps678.com/17/e1e89d7b8a1ab012.html" target="_blank">hier</a> eine Lösung in Visual Basic gefunden. Diese Lösung ist eigentlich recht elegant, da Sie API-Funktionen benutzt um das Rectangle zu zeichnen und die Höhe genau so zu bestimmen wie Sie auch später im Formular erscheinen würde wenn man z.B. den Text in ein Textfeld schreiben würde.</p>
<p>Hier eine Übersetzung in C#:<span id="more-94"></span></p>
<div>
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #0000ff;">using</span> System;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #0000ff;">using</span> System.Windows.Forms;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #0000ff;">using</span> System.Runtime.InteropServices;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #0000ff;">using</span> System.Drawing;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #0000ff;">class</span> Helper</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">{</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">struct</span> RECT</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Left;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Top;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Right;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Bottom;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_CALCRECT = 1024;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_CENTER = 1;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_LEFT = 0;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_RIGHT = 2;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_TOP = 0;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">const</span> <span style="color: #0000ff;">int</span> DT_WORDBREAK = 16;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    [DllImport(<span style="color: #006080;">"coredll.dll"</span>, CharSet = CharSet.Unicode,</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        SetLastError = <span style="color: #0000ff;">true</span>)]</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">extern</span> <span style="color: #0000ff;">int</span> DeleteObject(IntPtr hObject);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    [DllImport(<span style="color: #006080;">"coredll.dll"</span>, CharSet = CharSet.Unicode,</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        SetLastError = <span style="color: #0000ff;">true</span>)]</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">extern</span> <span style="color: #0000ff;">int</span> DrawText(IntPtr hdc, <span style="color: #0000ff;">string</span> lpStr,</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        <span style="color: #0000ff;">int</span> nCount, <span style="color: #0000ff;">ref</span> RECT lpRect, <span style="color: #0000ff;">int</span> wFormat);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    [DllImport(<span style="color: #006080;">"coredll.dll"</span>, CharSet = CharSet.Unicode,</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        SetLastError = <span style="color: #0000ff;">true</span>)]</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">extern</span> IntPtr SelectObject(IntPtr hdc,</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        IntPtr hObject);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #008000;">/// &lt;summary&gt;</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #008000;">/// Ändert die Höhe des Labels so, dass der Inhalt genau </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #008000;">/// reinpasst.</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #008000;">/// &lt;/summary&gt;</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #008000;">/// &lt;param name="label"&gt;Label dessen Höhe angepasst werden soll.</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    <span style="color: #008000;">/// &lt;/param&gt;</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span> AutoSizeLabelHeight(Label label)</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        RECT uRECT = <span style="color: #0000ff;">new</span> RECT();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        <span style="color: #0000ff;">try</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            <span style="color: #008000;">/*****************************************************</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * Create a Graphics object. We need a Graphics object </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * so we can get a handle to a Device Context to be used</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * later in the DrawText API. However the Label control </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * in CF2.0 does not support the CreateGraphics method,</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * so create the Graphics object from the form on which </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * the Label is located.</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * Note: This can cause an exception when this routine </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * is called from a Form's Resize event. Probably because</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * the form is not fully initialised and the Resize event</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * may be called one or more times during form</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            * initialisation. Therefore, the entire routine is wrapped</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">            * in a Try/Catch block.</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">            *****************************************************/</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            Graphics objGraphics = label.TopLevelControl.CreateGraphics();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            <span style="color: #008000;">// Get the handle to the Device Context of the Graphics object</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">            IntPtr hDc = objGraphics.GetHdc();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #008000;">// Get the handle to the Font of the Label</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                IntPtr hFont = label.Font.ToHfont();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                <span style="color: #008000;">// Apply the Font to the Graphics object</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                IntPtr hFontOld = SelectObject(hDc, hFont);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #008000;">// Set the initial size of the Rect</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                uRECT.Right = label.Width - 2;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                <span style="color: #008000;">// Build the base format</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #0000ff;">int</span> lFormat = DT_CALCRECT | DT_WORDBREAK | DT_TOP;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #008000;">/*****************************************************</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">                 * Adjust the format to the Label's text alignment.</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">                 * Note: This probably isn't necessary as the horizontal </span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">                 * alignment of text shouldn't affect the text</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;"><span style="color: #008000;">                 * height calculation. But just in case...</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #008000;">                 *****************************************************/</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #0000ff;">switch</span> (label.TextAlign)</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                    <span style="color: #0000ff;">case</span> ContentAlignment.TopLeft:</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                        lFormat = lFormat | DT_LEFT;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                        <span style="color: #0000ff;">break</span>;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                    <span style="color: #0000ff;">case</span> ContentAlignment.TopCenter:</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                        lFormat = lFormat | DT_CENTER;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                        <span style="color: #0000ff;">break</span>;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                    <span style="color: #0000ff;">case</span> ContentAlignment.TopRight:</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                        lFormat = lFormat | DT_RIGHT;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                        <span style="color: #0000ff;">break</span>;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                <span style="color: #008000;">// Calculate the Rect of the text</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #0000ff;">if</span> (DrawText(hDc, label.Text, -1, <span style="color: #0000ff;">ref</span> uRECT, lFormat)</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                    != 0)</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                    <span style="color: #008000;">// Success</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                    <span style="color: #008000;">// Apply the new height to the label</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                    label.Height = uRECT.Bottom + 2;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #008000;">// Cleanup</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                <span style="color: #008000;">// Set the Font of the Graphics object back to original</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                SelectObject(hDc, hFontOld);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">                <span style="color: #008000;">// Delete the handle to the Font of the Label</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">                DeleteObject(hFont);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">            }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">            <span style="color: #008000;">// Clean up the Graphics object</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            objGraphics.Dispose();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        <span style="color: #0000ff;">catch</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">        {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">            <span style="color: #008000;">// Do nothing</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">            <span style="color: #008000;">//Debug.WriteLine("AutoSizeLabelHeight failed.")</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">        }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: white;">    }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">}</pre>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://oliana.de/blog/2008/05/27/automatische-hohe-fur-labels-im-compact-framework-auf-dem-pocket-pc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.508 seconds -->

