<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The Wiert Corner - irregular stream of Wiert stuff &#187; Delphi</title>
	<atom:link href="http://wiert.me/category/development/software-development/delphi/feed/" rel="self" type="application/rss+xml" />
	<link>http://wiert.me</link>
	<description>Jeroen Pluimers on .NET, C#, Delphi, databases, and personal interests</description>
	<lastBuildDate>Fri, 25 May 2012 09:14:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='wiert.me' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/b304a1e247cd5ff89f194446f9a3ff12?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>The Wiert Corner - irregular stream of Wiert stuff &#187; Delphi</title>
		<link>http://wiert.me</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://wiert.me/osd.xml" title="The Wiert Corner - irregular stream of Wiert stuff" />
	<atom:link rel='hub' href='http://wiert.me/?pushpress=hub'/>
		<item>
		<title>Dodgy Coder: Coding tricks of game developers</title>
		<link>http://wiert.me/2012/04/26/dodgy-coder-coding-tricks-of-game-developers/</link>
		<comments>http://wiert.me/2012/04/26/dodgy-coder-coding-tricks-of-game-developers/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 05:00:25 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Batch-Files]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[C# 5.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi x64]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[JavaScript/ECMAScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7748</guid>
		<description><![CDATA[Some very interesting tips from game development that apply juts as well to general software development. On code health: Now I always try to dig right down to the root cause of a bug, even if a simple, and seemingly safe, patch is available. I want my code to be healthy. If you go to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7748&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Some very interesting tips from game development that apply juts as well to general software development.</p>
<p>On code health:</p>
<blockquote><p>Now I always try to dig right down to the root cause of a bug, even if a simple, and seemingly safe, patch is available. <span style="text-decoration:underline;">I want my code to be healthy</span>. If you go to the doctor and tell him &#8220;it hurts when I do this,&#8221; then you expect him to find out why it hurts, and to fix that.</p></blockquote>
<p>Though tools like <a href="http://www.campwoodsw.com/sourcemonitor.html" target="_blank">SourceMonitor</a> can help you track your code health, the best tool is between your ears.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.html">Dodgy Coder: Coding tricks of game developers</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/scripting/batch-files/'>Batch-Files</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-5-0/'>C# 5.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-x64/'>Delphi x64</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/scripting/javascriptecmascript/'>JavaScript/ECMAScript</a>, <a href='http://wiert.me/category/development/software-development/scripting/php/'>PHP</a>, <a href='http://wiert.me/category/development/software-development/scripting/powershell-scripting/'>PowerShell</a>, <a href='http://wiert.me/category/development/software-development/scripting/'>Scripting</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7748/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7748&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/04/26/dodgy-coder-coding-tricks-of-game-developers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing Delphi XE2: disable/uninstall WorkPace 3.0 and Data Guardian 5.2 first</title>
		<link>http://wiert.me/2012/04/10/installing-delphi-xe2-disableuninstall-workpace-3-0-and-data-guardian-5-2-first/</link>
		<comments>http://wiert.me/2012/04/10/installing-delphi-xe2-disableuninstall-workpace-3-0-and-data-guardian-5-2-first/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 05:00:20 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Opinions]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7602</guid>
		<description><![CDATA[Lot&#8217;s of corporate environments keep killing the productivity of their software developers by running WorkPace. They claim to prevent RSI, but the main thing they do is getting you out of your mental flow. Workpace (yes, it is written in Delphi) hooks itself into processes by injecting REC300.DLL into it. That particular DLL prevents Delphi [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7602&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Lot&#8217;s of corporate environments keep killing the productivity of their software developers by running <a href="http://www.workpace.com" target="_blank">WorkPace</a>. They claim to prevent RSI, but the main thing they do is getting you out of your <a href="http://en.wikipedia.org/wiki/Flow_(psychology)" target="_blank">mental flow</a>.</p>
<p>Workpace (yes, it is written in Delphi) hooks itself into processes by injecting <a href="http://systemexplorer.net/db/rec300.dll.html" target="_blank">REC300.DLL</a> into it.</p>
<p>That particular DLL prevents Delphi XE2 from installing in several of the systems colleagues tried, and gives you error messages like these:</p>
<blockquote><p><code>'' is not a valid integer value</code></p></blockquote>
<p>Followed by a bunch of access violations, and <a href="http://technet.microsoft.com/en-us/sysinternals/bb896645" target="_blank">Process Monitor</a> indicating issues reading the key <code>HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\REC300.DLL</code> which is part of WorkPace 3.0 (an old 2007 version).</p>
<p>The next problem was <a href="http://www.verdasys.com/data_loss_prevention.php" target="_blank">Digital Guardian</a> (an old 2010 version) hooking itself into all processes. Uninstalling that is a pain, as it requires a special uninstall key, but luckily the automated update script on the SCCM server&#8217;s distribution share contained that in an encrypted form. Uninstalling this solved the problem.</p>
<p>Maybe newer versions of WorkPace and Digital Guardian wouldn&#8217;t have interfered with the Delphi XE2 install. If so, that would be another example of <a href="http://en.wikipedia.org/wiki/Technical_debt" target="_blank">technical debt</a>.</p>
<p>WorkPace and Digitual Guardian are most likely there because of government induced regulations in the corporate environment.</p>
<p>I&#8217;m feeling a bit like Dilbert now: the corporate environment is interesting, but often they make &#8220;getting work done&#8221; so much harder than it could be.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/opinions/'>Opinions</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7602/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7602&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/04/10/installing-delphi-xe2-disableuninstall-workpace-3-0-and-data-guardian-5-2-first/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Some words on Unicode in Windows (Delphi, .NET, APIs, etc)</title>
		<link>http://wiert.me/2012/04/05/some-words-on-unicode-in-windows-delphi-net-apis-etc/</link>
		<comments>http://wiert.me/2012/04/05/some-words-on-unicode-in-windows-delphi-net-apis-etc/#comments</comments>
		<pubDate>Thu, 05 Apr 2012 05:00:07 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[EBCDIC]]></category>
		<category><![CDATA[Encoding]]></category>
		<category><![CDATA[ISO-8859]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Unicode]]></category>
		<category><![CDATA[UTF-8]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7596</guid>
		<description><![CDATA[Withe the growing integration between systems, and the mismatch between those that support Unicode and that do not, I find that a lot of organisations lack basic Unicode knowledge. So lets put down a few things, that helps as a primer and gets some confusion out of the way. Please read the article on Unicode [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7596&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 190px"><a href="http://shop.oreilly.com/product/9780596101213.do"><img title="O'Reilly book &quot;Unicode Explained: Internationalize Documents, Programs, and Web Sites&quot;" src="http://akamaicovers.oreilly.com/images/9780596101213/cat.gif" alt="O'Reilly book &quot;Unicode Explained: Internationalize Documents, Programs, and Web Sites&quot;" width="180" height="236" /></a><p class="wp-caption-text">O&#039;Reilly book &quot;Unicode Explained: Internationalize Documents, Programs, and Web Sites&quot;</p></div>
<p>Withe the growing integration between systems, and the mismatch between those that support <a href="http://en.wikipedia.org/wiki/Unicode" target="_blank">Unicode</a> and that do not, I find that a lot of organisations lack basic Unicode knowledge.</p>
<p>So lets put down a few things, that helps as a primer and gets some confusion out of the way.</p>
<p>Please read the <a href="http://www.joelonsoftware.com/articles/Unicode.html" target="_blank">article on Unicode by Joel on Software</a>, and the book <a href="http://shop.oreilly.com/product/9780596101213.do" target="_blank">Unicode Explained</a>. The book is from 1996, and still very valid.</p>
<h1>Unicode</h1>
<p><a href="http://en.wikipedia.org/wiki/Unicode#History" target="_blank">Unicode started in the late 80s of last century</a> as a 16-bit character model.</p>
<p>Somehow lots of people still thing Unicode is a 16-bit <a href="http://en.wikipedia.org/wiki/DBCS" target="_blank">double-byte character set</a>. It is not. It uses a <a href="http://en.wikipedia.org/wiki/Multi-byte_character_set" target="_blank">variable width encoding</a> for storage.</p>
<p>All encodings except the 32-bit ones are variable width. The UTF-16 encoding is a variable width encoding where each <a href="http://en.wikipedia.org/wiki/Unicode#Code_point_planes_and_blocks" target="_blank">code point</a> (not character!, see below why) takes one or more 16-bit words.</p>
<p>This is because &#8211; as of <a href="http://en.wikipedia.org/wiki/Unicode#Versions" target="_blank">Unicode version 2.0 in 1996</a> &#8211; a surrogate character mechanism was introduced to be able to have more than 64k code points.</p>
<p>The <a href="http://en.wikipedia.org/wiki/Unicode#Architecture_and_terminology" target="_blank">architecture of Unicode</a> is completely different than traditional <a href="http://en.wikipedia.org/wiki/SBCS" target="_blank">single-byte character sets</a> or <a href="http://en.wikipedia.org/wiki/DBCS" target="_blank">double-byte character sets</a>.</p>
<p>In Unicode, there is a distinction between <a href="http://en.wikipedia.org/wiki/Code_point" target="_blank">code points</a> (the <a href="http://en.wikipedia.org/wiki/Mapping_of_Unicode_characters" target="_blank">mapping of the character</a> to an actual IDs), <a href="http://en.wikipedia.org/wiki/Unicode#Unicode_Transformation_Format_and_Universal_Character_Set" target="_blank">storage/encoding</a> (in Windows now uses <a href="http://en.wikipedia.org/wiki/UCS-2" target="_blank">UTF-16LE which includes the past used UCS-2</a>) and leaves visual representation (<a href="http://en.wikipedia.org/wiki/Glyph" target="_blank">glyphs</a>/renderings) to fonts.</p>
<p>Unicode has over a million code points, logically divided into 17 <a href="http://en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes" target="_blank">planes</a>, of which the <a href="http://en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes#Basic_Multilingual_Plane" target="_blank">Basic Multi-lingual Plane</a> has code points that can be encoded into one 16-bit word.</p>
<p>There is no font that can display all Unicode code points. <a href="http://en.wikipedia.org/wiki/Unicode#Origin_and_development" target="_blank">By original aim</a>, the first 256 Unicode code points are identical to the <a href="http://en.wikipedia.org/wiki/ISO_8859-1" target="_blank">ISO 8859-1 character set</a> (which is <a href="http://msdn.microsoft.com/en-us/goglobal/cc305167" target="_blank">Windows-29591</a>, not <a href="http://en.wikipedia.org/wiki/Windows-1252" target="_blank">Windows-1252</a>!) for which most fonts can display most characters.</p>
<p><a href="http://www.codinghorror.com/blog/2008/03/i-entity-unicode.html"><img class="alignright" title="I entity Unicode (Windows version)" src="http://images8.cpcache.com/product/391862048v0_350x350_Front.jpg" alt="I entity Unicode (Windows version)" width="350" height="350" /></a></p>
<p>By now, you probably grasp that Unicode is not an easy thing to get right. And that can be hard, hence people <a href="http://www.codinghorror.com/blog/2008/03/i-entity-unicode.html" target="_blank">love and hate Unicode at the same time</a>. Maybe I should <a href="http://blogs.msdn.com/b/michkap/archive/2005/09/11/463670.aspx" target="_blank">get the T-Shirt</a> <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>One thing that complexes things, is that Unicode allows for both <a href="http://en.wikipedia.org/wiki/Unicode#Ready-made_versus_composite_characters" target="_blank">composite characters and ready made composites</a>. This is one form where different sequences can be equivalent, so there can be <a href="http://en.wikipedia.org/wiki/Unicode_equivalence" target="_blank">Unicode equivalence</a> for which you need some knowledge on <a href="http://en.wikipedia.org/wiki/Unicode_equivalence#Normalization" target="_blank">Unicode Normalization</a> (be sure to read this <a href="http://stackoverflow.com/questions/7041013/unicode-normalization-in-windows" target="_blank">StackOverflow question</a> and this <a href="http://blogs.msdn.com/b/michkap/archive/2004/11/29/271476.aspx" target="_blank">article by Michael Kaplan</a> on <a href="http://stackoverflow.com/questions/7041013/unicode-normalization-in-windows" target="_blank">Unicode Normalization</a>).</p>
<p>There are many Unicode encodings, of which UTF-8 and UTF-16 are the most widely used (and are variable length). UTF-32 is fixed length. All 16-bit and 32-bit encodings can <a href="http://en.wikipedia.org/wiki/Endianness" target="_blank">have big-endian and little-endian</a> storage and can use a <a href="http://en.wikipedia.org/wiki/Byte_Order_Mark" target="_blank">Byte Order Mark</a> (BOM) to indicate their endinaness. Not all software uses BOMs, and there are BOMs for UTF-8 and other encodings as well (<a href="http://en.wikipedia.org/wiki/Byte_Order_Mark#UTF-8" target="_blank">for UTF-8 it is not recommended to include a BOM</a>).</p>
<p>When only parts your development environment supports Unicode strings, you need to be aware of which do and which don&#8217;t. For any interface boundary between those, you need to be aware of potential data loss, and need to decide how to cope with that.</p>
<p>For instance, does your database use Unicode or not for character storage? (For Microsoft SQL Server: do you use <a href="http://msdn.microsoft.com/en-us/library/ms176089.aspx" target="_blank">CHAR/VARCHAR</a> or <a href="http://msdn.microsoft.com/en-us/library/ms186939.aspx" target="_blank">NCHAR/NVARCHAR</a>; <a href="http://stackoverflow.com/a/35369/29290" target="_blank">you should aim for NVARCHAR</a>, yes <a href="http://stackoverflow.com/a/147302/29290" target="_blank">you really should</a>, do not use <a href="http://msdn.microsoft.com/en-us/library/ms187993.aspx" target="_blank">text, ntext and image</a>). What do you do while transferring Unicode and non-Unicode text to it? Ask the same questions for Web Services, configuration files, binary storage, message queueing and various other interfaces to the outside world.</p>
<p>The Windows API is almost exclusively Unicode (see <a href="http://stackoverflow.com/questions/4592261/windows-api-ansi-and-wide-character-strings-is-it-utf8-or-ascii-utf-16-or-u" target="_blank">this StackOverflow question</a> for more details)</p>
<h1>Delphi and Unicode</h1>
<p>Let&#8217;s focus a bit on Delphi now, as that the migration towards Unicode at clients raised a few questions over the last couple of months.</p>
<p>One of the key questions is why there are no conversion tools that help you migrate your existing source code to fully embrace Unicode.</p>
<p>The short answer is: because you can&#8217;t automate the detection of intent in your codebase.</p>
<p>The longer answer starts with that there are tools that detect parts of your Delphi source that potentially has problems: the compiler hints, warnings and errors that brings your attention to spots that are fishy, are likely to fail, or are plain wrong.</p>
<p>Delphi uses the standard Windows storage format for Unicode text: <a href="http://en.wikipedia.org/wiki/UTF-16#Byte_order_encoding_schemes" target="_blank">UTF-16LE</a>.</p>
<p>Next to that, Delphi supports conversion to and from UTF-8 en UTF-32 (in their various forms endianness).</p>
<p>External storage of text is best done as UTF-8 because it doesn&#8217;t have endianness, and because of easier exchange of text in ISO-8859-1.</p>
<p>Marco Cantu wrote a very nice <a href="http://blog.marcocantu.com/blog/d2009_whitepaper1.html" target="_blank">whitepaper about Delphi and Unicode</a>, and I did a <a href="http://wiert.me/2009/09/09/coderage-4-session-materials-available-for-download/" target="_blank">Delphi Unicode talk at CodeRage 4</a> and posted a <a href="http://stackoverflow.com/a/1400413/29290" target="_blank">lot of Delphi Unicode links at StackOverflow</a>.</p>
<p>A few extra notes on Delphi and Unicode:</p>
<p>With <a href="http://docwiki.embarcadero.com/RADStudio/en/String_Types" target="_blank">Delphi string types</a>, stick to the <a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.UnicodeString" target="_blank">UnicodeString</a> (default string as of Delphi 2009) and <a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.AnsiString" target="_blank">AnsiString</a> (default string until Delphi 2007) as their memory management is done by Delphi. <a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.WideString" target="_blank">WideString</a> management is done by COM, so only use that when you really need to. Also avoid <a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.ShortString" target="_blank">ShortString</a>.</p>
<p>For any interfaces to the external world, you need to decide which ones to keep to generic string, Char, PChar and which ones to fix to AnsiChar/PAnsiChar/AnsiString(+ accompanying codepage) or fix at UnicodeChar/PUnicodeChar/UnicodeString.</p>
<p>Of course remnants from the past will catch up with you: if you have <a href="http://wiert.me/2012/04/04/debt-in-it-and-software-development-via-coding-horror-paying-down-your-technical-debt" target="_blank">Technical Debt</a> on the past where characters were bytes, and you abused Char/PChar/array-of-char/etc you need to fix that, and use the <a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.Byte" target="_blank">Byte</a>/<a href="http://docwiki.embarcadero.com/VCL/XE2/en/System.PByte" target="_blank">PByte</a>/<a href="http://docwiki.embarcadero.com/VCL/en/SysUtils.TByteArray" target="_blank">TByteArray</a>/<a href="http://docwiki.embarcadero.com/VCL/en/SysUtils.PByteArray" target="_blank">PByteArray</a>. It can be costly to pay the accrued debt on that.</p>
<p>&#8211;jeroen</p>
<p>PS:</p>
<ul>
<li>There is even more confusion on character set, code page, etc, which <a href="http://blogs.msdn.com/b/oldnewthing/archive/2005/08/29/457483.aspx#457549" target="_blank">Mihai tries to set straight</a> at the <a href="http://blogs.msdn.com/b/oldnewthing/archive/2005/08/29/457483.aspx" target="_blank">Why is the default console codepage called &#8220;OEM&#8221;?</a> episode of &#8220;<a href="http://blogs.msdn.com/b/oldnewthing" target="_blank">The Old New Thing</a>&#8220;</li>
<li>Getting your character set (ANSI, Windows-1252, ISO 8859-1) right is a problem of the same order of magnitude as <a href="http://blogs.msdn.com/b/oldnewthing/archive/2004/05/31/144893.aspx" target="_blank">Ben Hutchings shows</a>.</li>
<li><a href="http://www.google.com/reader/view/#stream/feed%2Fhttp%3A%2F%2Fblogs.msdn.com%2Foldnewthing%2Frss.xml" target="_blank">Notepad supports three kinds of text formats</a></li>
</ul>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/encoding/ebcdic/'>EBCDIC</a>, <a href='http://wiert.me/category/development/software-development/encoding/'>Encoding</a>, <a href='http://wiert.me/category/development/software-development/encoding/iso-8859/'>ISO-8859</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/encoding/unicode/'>Unicode</a>, <a href='http://wiert.me/category/development/software-development/encoding/utf-8/'>UTF-8</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7596/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7596/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7596/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7596&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/04/05/some-words-on-unicode-in-windows-delphi-net-apis-etc/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://akamaicovers.oreilly.com/images/9780596101213/cat.gif" medium="image">
			<media:title type="html">O&#039;Reilly book &#34;Unicode Explained: Internationalize Documents, Programs, and Web Sites&#34;</media:title>
		</media:content>

		<media:content url="http://images8.cpcache.com/product/391862048v0_350x350_Front.jpg" medium="image">
			<media:title type="html">I entity Unicode (Windows version)</media:title>
		</media:content>
	</item>
		<item>
		<title>Debt in IT and Software Development (via: Coding Horror: Paying Down Your Technical Debt)</title>
		<link>http://wiert.me/2012/04/04/debt-in-it-and-software-development-via-coding-horror-paying-down-your-technical-debt/</link>
		<comments>http://wiert.me/2012/04/04/debt-in-it-and-software-development-via-coding-horror-paying-down-your-technical-debt/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 05:00:45 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[*nix]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Opinions]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[Windows Vista]]></category>
		<category><![CDATA[Windows XP]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7598</guid>
		<description><![CDATA[I love this quote from Jeff Attwood on technical debt in 2009: periodically pay down your technical debt and the Computer Weekely article about half a year ago: Short-term speed may come at the price of long-term delays and cost. Lately, I find that I need to explain Debt in relation to IT and Software Development [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7598&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 190px"><a href="http://www.glasbergen.com/?s=insure-18"><img class=" " title="Debt and flood insurance" src="http://www.glasbergen.com/wp-content/gallery/insurance-cartoons/thumbs/thumbs_insure-18.gif" alt="Debt and flood insurance" width="180" height="180" /></a><p class="wp-caption-text">Thanks to Randy Glasbergen for the debt image</p></div>
<p>I love this quote from <a href="http://www.codinghorror.com/blog/2009/02/paying-down-your-technical-debt.html" target="_blank">Jeff Attwood on technical debt</a> in 2009:</p>
<blockquote><p>periodically pay down your technical debt</p></blockquote>
<p>and the <a href="http://www.computerweekly.com/blogs/cwdn/2011/09/is-technical-debt-breaking-the-software-development-bank-balance.html" target="_blank">Computer Weekely article</a> about half a year ago:</p>
<blockquote><p>Short-term speed may come at the price of long-term delays and cost.</p></blockquote>
<p>Lately, I find that I need to explain Debt in relation to IT and Software Development more and more often.</p>
<p>We now all know what happens with the financial system when we let debt get out of control.</p>
<p>The same holds for your IT and Software Development.</p>
<p>Debts get introduced by not &#8220;playing by the rules&#8221;. The quotes are there because you can not always play nicely, and the rules are not always clear or known.</p>
<p>Lets give a few examples of rules that &#8211; from experience at clients &#8211; are more often than not neglected. The examples are based on Windows, but could just as easily be Mac OS X, Unix, OS/400 or anything else.</p>
<ul>
<li>Make sure you use a recent Windows version<br />
I often see companies lagging more than one version behind (i.e. still use Windows XP or SQL Server 2000). That&#8217;s too far.</li>
<li>Don&#8217;t run your users with too many privileges (and certainly not as Administrators)<br />
Especially running as Administrator will get you in trouble with <a href="http://en.wikipedia.org/wiki/User_Account_Control" target="_blank">User Account Control</a> (UAC) in Windows Vista and up.</li>
<li>Using directories like C:\TEMP is a no-no.<br />
This should be a no-brainer, but truckloads of in-company software still thinks it can write everywhere.<br />
I know C:\TEMP used to be the <a href="http://en.wikipedia.org/wiki/Temporary_folder" target="_blank">Temporary Folder</a> some 20 years ago.<br />
But that was then, and this is now: Use the %TEMP% <a href="http://en.wikipedia.org/wiki/Environment_variable#DOS.2C_OS.2F2_and_Windows_.28Command_Prompt.29" target="_blank">environment variable</a> or <a href="http://msdn.microsoft.com/en-us/library/aa364992.aspx" target="_blank">GetTempPath</a> function (even better: the <a href="http://msdn.microsoft.com/en-us/library/aa364991.aspx" target="_blank">GetTempFileName</a> function or the .NET <a href="http://msdn.microsoft.com/en-us/library/system.io.path.gettempfilename.aspx" target="_blank">Path.GetTempFileName</a> function).<br />
More in general for known folders, use <a href="http://msdn.microsoft.com/en-us/library/bb762494.aspx" target="_blank">CSIDL</a> or <a href="http://msdn.microsoft.com/en-us/library/dd378457.aspx" target="_blank">KNOWNFOLDERID</a> whenever possible. Your favourite development tool usually has a library functions for that, for instance the .NET <a href="http://msdn.microsoft.com/en-us/library/14tx8hby.aspx" target="_blank">System.Environment.GetFolderPath</a> function.</li>
</ul>
<p>These few were examples ranged from technically very broad to specific. There are more, but these will give you a rough idea how wide the field of debt can be. Even debt outside the realm of <a href="http://en.wikipedia.org/wiki/Technical_debt" target="_blank">Technical Debt</a> can turn out to be really expensive.</p>
<p>Every time you  postpone or skip a Windows version, you collect some debt in the hope (often wrongfully called expectation) that you earn more on the money/resource you just didn&#8217;t invest and putting that money/resource to use otherwise. The same holds for any other kind of debt.</p>
<p>The main problem with debt is not the total of the debt, it is the interest rate that makes the accrued debt grows faster than most people and organizations realize.</p>
<p>This is actually one of the main causes of the current world wide financial crisis, the same holds for many IT debts.</p>
<p>And for all kinds of debts, you often don&#8217;t know how high the interest rate will be, so the accrued value can be way beyond what you expect.</p>
<p>I&#8217;ve regularly seen projects collecting so much debt, that migration costs raised to thousands of hours because of it, resulting into management taking another very bad decision: rewriting the stuff from scratch. Don&#8217;t do that: <a href="http://www.joelonsoftware.com/articles/fog0000000069.html" target="_blank">Joel on Software excellently describes</a> what happens when you do that.</p>
<p>What to do about it?</p>
<p>You might say &#8220;don&#8217;t collect debt&#8221;, but you can&#8217;t always avoid debt.</p>
<p>So you need to build periods where you <a href="http://www.codinghorror.com/blog/2009/02/paying-down-your-technical-debt.html" target="_blank">pay off accrued debt</a>. And you need to do that regularly, in order to avoid the interest pitfall.</p>
<p>This does not limit itself to software development (though that&#8217;s what I normally focus at). It covers a wide range of IT topics.</p>
<p>Sometimes, you can even pay your debt in advance. For instance, I was among the first to switch from Windows XP to the x64 of Windows Vista. I knew it would cause pain, but it immediately payed back by being able to use much more memory, and run more Virtual Machines at the same time. That made me more flexible and productive.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.codinghorror.com/blog/2009/02/paying-down-your-technical-debt.html">Coding Horror: Paying Down Your Technical Debt</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/power-user/nix/'>*nix</a>, <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/opinions/'>Opinions</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/power-user/windows/'>Windows</a>, <a href='http://wiert.me/category/power-user/windows/windows-7/'>Windows 7</a>, <a href='http://wiert.me/category/power-user/windows/windows-8/'>Windows 8</a>, <a href='http://wiert.me/category/power-user/windows/windows-vista/'>Windows Vista</a>, <a href='http://wiert.me/category/power-user/windows/windows-xp/'>Windows XP</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7598/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7598&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/04/04/debt-in-it-and-software-development-via-coding-horror-paying-down-your-technical-debt/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://www.glasbergen.com/wp-content/gallery/insurance-cartoons/thumbs/thumbs_insure-18.gif" medium="image">
			<media:title type="html">Debt and flood insurance</media:title>
		</media:content>
	</item>
		<item>
		<title>naming &#8211; What&#8217;s the use/meaning of the @ character in variable names in C#? &#8211; Stack Overflow</title>
		<link>http://wiert.me/2012/03/28/naming-whats-the-usemeaning-of-the-character-in-variable-names-in-c-stack-overflow/</link>
		<comments>http://wiert.me/2012/03/28/naming-whats-the-usemeaning-of-the-character-in-variable-names-in-c-stack-overflow/#comments</comments>
		<pubDate>Wed, 28 Mar 2012 05:00:59 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7578</guid>
		<description><![CDATA[Duh, I always thought @ could only be used for strings. Not so: just like with the &#38; in Delphi, you can use @ for identifiers too. The prefix &#8220;@&#8221; enables the use of keywords as identifiers, which is useful when interfacing with other programming languages. The character @ is not actually part of the identifier, so the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7578&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Duh, I always thought @ could only be used for strings.</p>
<p>Not so: just like with the <a href="http://stackoverflow.com/questions/1512109/how-do-you-escape-a-reserved-word-in-delphi" target="_blank">&amp; in Delphi</a>, you can use @ for identifiers too.</p>
<blockquote><p>The prefix &#8220;@&#8221; enables the use of keywords as identifiers, which is useful when interfacing with other programming languages. The character @ is not actually part of the identifier, so the identifier might be seen in other languages as a normal identifier, without the prefix. An identifier with an @ prefix is called a verbatim identifier.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via: <a href="http://stackoverflow.com/questions/91817/whats-the-use-meaning-of-the-character-in-variable-names-in-c">naming &#8211; What&#8217;s the use/meaning of the @ character in variable names in C#? &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7578/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7578&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/03/28/naming-whats-the-usemeaning-of-the-character-in-variable-names-in-c-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>&#8220;Cannot navigate to definition&#8221; annoyance in Visual Studio 2010 &#8211; (did it implement the mouse equivalent to Delphi code browsing? No, it didn&#8217;t)</title>
		<link>http://wiert.me/2012/03/08/cannot-navigate-to-definition-annoyance-in-visual-studio-2010-did-it-implement-the-mouse-equivalent-to-delphi-code-browsing-no-it-didnt/</link>
		<comments>http://wiert.me/2012/03/08/cannot-navigate-to-definition-annoyance-in-visual-studio-2010-did-it-implement-the-mouse-equivalent-to-delphi-code-browsing-no-it-didnt/#comments</comments>
		<pubDate>Thu, 08 Mar 2012 05:00:25 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Visual Studio and tools]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7536</guid>
		<description><![CDATA[This use case drove me nuts in Visual Studio 2010 for a while, but can be solved. Use cases: double click on a word to select it press Ctrl-C to copy the selected text result is either of these two dialogs: --------------------------- Microsoft Visual Studio --------------------------- Cannot navigate to definition. --------------------------- OK --------------------------- or --------------------------- [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7536&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This use case drove me nuts in Visual Studio 2010 for a while, but can be solved.</p>
<p>Use cases:</p>
<ol>
<li><a href="http://www.flickr.com/photos/jwpluimers/6770945341/in/photostream"><img class="alignright" title="Cannot navigate to definition." src="http://farm8.staticflickr.com/7156/6770945341_b6442faaab_o.png" alt="Cannot navigate to definition." width="277" height="171" /></a>double click on a word to select it</li>
<li>press Ctrl-C to copy the selected text</li>
<li>result is either of these two dialogs:<br />
<blockquote><p><code>---------------------------<br />
Microsoft Visual Studio<br />
---------------------------<br />
Cannot navigate to definition.<br />
---------------------------<br />
OK<br />
---------------------------</code></p></blockquote>
<p><a href="http://www.flickr.com/photos/jwpluimers/6770945283/in/photostream"><img class="alignright" title="Cannot navigate to definition. The cursor is not on a symbol." src="http://farm8.staticflickr.com/7154/6770945283_26bdd2d177_o.png" alt="Cannot navigate to definition. The cursor is not on a symbol." width="441" height="171" /></a>or</p>
<blockquote><p><code>---------------------------<br />
Microsoft Visual Studio<br />
---------------------------<br />
Cannot navigate to definition. The cursor is not on a symbol.<br />
---------------------------<br />
OK<br />
---------------------------</code></p></blockquote>
</li>
</ol>
<p>The reason is that Visual Studio 2010 still thinks I am clicking the identifier (which I&#8217;m not, I just released the mouse button) while pressing the Ctrl key.<span id="more-7536"></span></p>
<p>Actually I never realized that Visual Studio 2010 incorporated the same form of Ctrl-Click code browsing that I got accustomed to <a href="http://www.marcocantu.com/papers/Mysteries.htm" target="_blank">since Delphi 4 in 1998</a> :)</p>
<p>Whereas the Delphi code browsing keyboard shortcuts <a href="http://www.stevetrefethen.com/blog/UsingcodebrowsingintheDelphiIDE.aspx" target="_blank">are the same as for web browser keyboard shortcuts</a> (like Alt-Left/Alt-Right and <a href="http://support.lenovo.com/en_US/detail.page?LegacyDocID=MIGR-57743" target="_blank">Browse-Left/Browse-Right</a>), I have gotten accustomed to the odd Visual Studio keyboard shortcuts <a href="http://blogs.msdn.com/b/lukeh/archive/2007/06/04/f12-go-to-definition.aspx" target="_blank">F12 (go to definition of symbol)</a>, <a href="http://mitch-wheat.blogspot.com/2006/09/visual-studio-2005-ide-pro_115928263399626169.html" target="_blank">Ctrl-Minus (navigate to previous editor position) and Ctrl-Shift-Minus (navigate to last cursor location)</a>.<br />
That is fine with me. When switching between Visual Studio, Delphi, Xcode, etc, I mentally switch to different sets of keyboard/mouse usage anyway.</p>
<p>But did Visual Studio implement this natural way of code browsing?</p>
<p>No, it didn&#8217;t, and it took the  <a href="http://stackoverflow.com/questions/7881296/cannot-navigate-to-definition-annoyance-in-visual-studio-2010">&#8220;Cannot navigate to definition&#8221; annoyance in Visual Studio 2010 question on Stack Overflow</a> for me to realize that.</p>
<p>The code browsing is actually provided by the <a href="http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef" target="_blank">Productivity Power Tools</a> for Visual Studio by Microsoft:<a href="http://www.flickr.com/photos/jwpluimers/6770999003/sizes/o/in/photostream/"><img class="alignright" title="How to disable the &quot;Ctrl + Click Go To Definition&quot; extension of the Productivity Power Tools " src="http://farm8.staticflickr.com/7009/6770999003_a72c043ec8_m.jpg" alt="How to disable the &quot;Ctrl + Click Go To Definition&quot; extension of the Productivity Power Tools " width="240" height="139" /></a></p>
<blockquote><p><strong>Ctrl + Click Go To Definition</strong><br />
This extension gives the editor a web browser by adding clickable hyperlinks to symbols in your code as you hold down the Ctrl key.</p></blockquote>
<p>And that extension is buggy <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>But: since you can individually disable extensions in the Productivity Power Tools, it is easy to workaround: go to &#8220;Tools Options&gt;Productivity Power Tools&#8221; and you will see a dialog similar to the image on the right (<a href="http://www.flickr.com/photos/jwpluimers/6770999003/sizes/o/in/photostream/" target="_blank">click to enlarge</a>). Then turn off the Ctrl + Click Go to Definition and press the OK button, and restart Visual Studio.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://stackoverflow.com/questions/7881296/cannot-navigate-to-definition-annoyance-in-visual-studio-2010">&#8220;Cannot navigate to definition&#8221; annoyance in Visual Studio 2010 &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2010/'>Visual Studio 2010</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/'>Visual Studio and tools</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7536/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7536/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7536/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7536&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/03/08/cannot-navigate-to-definition-annoyance-in-visual-studio-2010-did-it-implement-the-mouse-equivalent-to-delphi-code-browsing-no-it-didnt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7156/6770945341_b6442faaab_o.png" medium="image">
			<media:title type="html">Cannot navigate to definition.</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7154/6770945283_26bdd2d177_o.png" medium="image">
			<media:title type="html">Cannot navigate to definition. The cursor is not on a symbol.</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7009/6770999003_a72c043ec8_m.jpg" medium="image">
			<media:title type="html">How to disable the &#34;Ctrl + Click Go To Definition&#34; extension of the Productivity Power Tools </media:title>
		</media:content>
	</item>
		<item>
		<title>Anyone with a C#, Delphi or FreePascal implementation of the PRESENT Ultra-Lightweight Block Cipher encryption?</title>
		<link>http://wiert.me/2012/03/06/anyone-with-a-c-delphi-or-freepascal-implementation-of-the-present-ultra-lightweight-block-cipher-encryption/</link>
		<comments>http://wiert.me/2012/03/06/anyone-with-a-c-delphi-or-freepascal-implementation-of-the-present-ultra-lightweight-block-cipher-encryption/#comments</comments>
		<pubDate>Tue, 06 Mar 2012 05:00:09 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[C# 5.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7988</guid>
		<description><![CDATA[A short while ago a paper got published on PRESENT: An Ultra-Lightweight Block Cipher by Andrey Bogdanov et al becoming ISO standard 29192-2:2012. Is there anyone that has a C#, Delphi or FreePascal implementation with unit tests? &#8211;jeroen Filed under: .NET, C#, C# 2.0, C# 3.0, C# 4.0, C# 5.0, Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7988&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A short while ago a paper got published on <a href="http://homes.esat.kuleuven.be/~abogdano/papers/present_ches07.pdf" target="_blank">PRESENT: An Ultra-Lightweight Block Cipher</a> by <a href="http://homes.esat.kuleuven.be/~abogdano/" target="_blank">Andrey Bogdanov</a> et al becoming <a href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=56552" target="_blank">ISO standard 29192-2:2012</a>.</p>
<p>Is there anyone that has a C#, Delphi or FreePascal implementation with unit tests?</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-5-0/'>C# 5.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7988/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7988/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7988/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7988&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/03/06/anyone-with-a-c-delphi-or-freepascal-implementation-of-the-present-ultra-lightweight-block-cipher-encryption/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>P/Invoke: usually you need CharSet.Auto (via: .NET Column: Calling Win32 DLLs in C# with P/Invoke)</title>
		<link>http://wiert.me/2012/02/28/pinvoke-usually-you-need-charset-auto-via-net-column-calling-win32-dlls-in-c-with-pinvoke/</link>
		<comments>http://wiert.me/2012/02/28/pinvoke-usually-you-need-charset-auto-via-net-column-calling-win32-dlls-in-c-with-pinvoke/#comments</comments>
		<pubDate>Tue, 28 Feb 2012 05:00:06 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Ansi]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Encoding]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Unicode]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7491</guid>
		<description><![CDATA[I don&#8217;t do P/Invoke often, and somehow I have trouble remembering the value of CharSet to pass with DllImport. In short, pass CharSet.Auto unless you P/Invoke a function that is specific to CharSet.Ansi or CharSet.Unicode. The default is CharSet.Ansi, which you usually don&#8217;t want: when Char or String data is part of the equation, set the CharSet property [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7491&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t do <a href="http://www.pinvoke.net" target="_blank">P/Invoke</a> often, and somehow I have trouble remembering the value of <a href="http://msdn.microsoft.com/en-us/library/7b93s42f.aspx" target="_blank">CharSet to pass with DllImport</a>.</p>
<p>In short, <span style="text-decoration:underline;">pass CharSet.Auto unless you P/Invoke a function that is specific to CharSet.Ansi or CharSet.Unicode</span>. <a href="http://msdn.microsoft.com/en-us/magazine/cc164123.aspx" target="_blank">The default is CharSet.Ansi, which you usually don&#8217;t want</a>:</p>
<blockquote><p>when Char or String data is part of the equation, <span style="text-decoration:underline;">set the CharSet property to CharSet.Auto</span>. This causes the CLR to use the appropriate character set based on the host OS. If you don&#8217;t explicitly set the CharSet property, then its <span style="text-decoration:underline;">default is CharSet.Ansi. This default is unfortunate because it negatively affects the performance of text parameter marshaling for interop calls made on Windows 2000, Windows XP, and Windows NT®</span>.</p>
<p>The only time you should explicitly select a CharSet value of CharSet.Ansi or CharSet.Unicode, rather than going with CharSet.Auto, is when you are explicitly naming an exported function that is specific to one or the other of the two flavors of Win32 OS. An example of this is the ReadDirectoryChangesW API function, which exists only in Windows NT-based operating systems and supports Unicode only; in this case you should use CharSet.Unicode explicitly.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via: <a href="http://msdn.microsoft.com/en-us/magazine/cc164123.aspx" target="_blank">.NET Column: Calling Win32 DLLs in C# with P/Invoke</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/encoding/ansi/'>Ansi</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/encoding/'>Encoding</a>, <a href='http://wiert.me/category/development/software-development/net/prism/'>Prism</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/encoding/unicode/'>Unicode</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7491/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7491&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/02/28/pinvoke-usually-you-need-charset-auto-via-net-column-calling-win32-dlls-in-c-with-pinvoke/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>FireMonkey and (OS X, iOS, Windows) Link Clearance</title>
		<link>http://wiert.me/2012/02/21/firemonkey-and-os-x-ios-windows-link-clearance/</link>
		<comments>http://wiert.me/2012/02/21/firemonkey-and-os-x-ios-windows-link-clearance/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 05:00:49 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[OS X FMX]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7464</guid>
		<description><![CDATA[Some links that I found useful for doing FireMonkey and development for OS X or iOS: Jed Software on a Select Directory method on OS X (they have an OS X category) iOS demos applications by Anders Ohlsson shown on CodeRage 6 Russian FireMonkey sample app submissions that won prizes 3D interactive FireMonkey app for displaying models [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7464&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Some links that I found useful for doing FireMonkey and development for OS X or iOS:</p>
<ul>
<li><a href="http://jed-software.com/blog/?p=538" target="_blank">Jed Software on a Select Directory method on OS X</a> (they have an <a href="http://jed-software.com/blog/?category_name=firemonkey" target="_blank">OS X category</a>)</li>
<li><a href="http://blogs.embarcadero.com/ao/2011/10/26/39188" target="_blank">iOS demos applications by Anders Ohlsson</a> shown on CodeRage 6</li>
<li><a href="http://delphifeeds.ru/index.php?option=com_content&amp;view=article&amp;id=3394:-q-firemonkeyq&amp;catid=90:events&amp;Itemid=67" target="_blank">Russian FireMonkey sample app submissions</a> that won prizes</li>
<li><a href="http://edn.embarcadero.com/article/41874" target="_blank">3D interactive FireMonkey app for displaying models imported from COLLADA files using Delphi IDE build-events to automatically compile HLSL shaders with a custom camera class, and example how to export COLLADA models from 3D Studio Max</a></li>
<li><a href="http://www.delphifeeds.com/go/s/88385" target="_blank">Changing style colors on the fly</a></li>
<li><a href="http://monkeystyler.com/blog" target="_blank">The MonkeyStyler blog</a></li>
<li><a href="http://edn.embarcadero.com/article/42007" target="_blank">Visualizing Math Functions in 3D</a> and <a href="http://edn.embarcadero.com/article/42007" target="_blank">Visualizing Interference in 3D</a></li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/os-x-fmx/'>OS X FMX</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7464/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7464&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/02/21/firemonkey-and-os-x-ios-windows-link-clearance/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Jason Southwell (from arcana) just published DuckDuckDelphi: a unit to do Duck typing in Delphi XE2 (not XE)</title>
		<link>http://wiert.me/2012/02/16/jason-southwell-from-arcana-just-published-duckduckdelphi-a-unit-to-do-duck-typing-in-delphi-xe2-and-xe/</link>
		<comments>http://wiert.me/2012/02/16/jason-southwell-from-arcana-just-published-duckduckdelphi-a-unit-to-do-duck-typing-in-delphi-xe2-and-xe/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 05:00:33 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7797</guid>
		<description><![CDATA[If you haven&#8217;t seen Jason announce this in the general Delphi 3rd party newsgroup or his announcement thread on the FaceBook Delphi Developer group yet, this is a definitive must read: Jason Southwell (from arcana) just published DuckDuckDelphi: a unit to do Duck typing in Delphi XE2 (not XE): Duck Duck Delphi DuckDuckDelphi is an [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7797&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you haven&#8217;t seen <a href="https://forums.embarcadero.com/thread.jspa?threadID=67909" target="_blank">Jason announce this</a> in the <a href="https://forums.embarcadero.com/forum.jspa?forumID=92" target="_blank">general Delphi 3rd party newsgroup</a> or his <a href="https://www.facebook.com/groups/137012246341854/330228903686853/?ref=notif&amp;notif_t=group_activity" target="_blank">announcement thread</a> on the <a href="https://www.facebook.com/groups/137012246341854" target="_blank">FaceBook Delphi Developer group</a> yet, this is a definitive <span style="text-decoration:underline;">must read</span>:</p>
<p><a href="https://www.facebook.com/jasonsouthwell" target="_blank">Jason Southwell</a> (from <a href="http://arcana.sivv.com/" target="_blank">arcana</a>) just published <a href="http://arcana.sivv.com/duckduckdelphi" target="_blank">DuckDuckDelphi</a>: a unit to do <a href="http://en.wikipedia.org/wiki/Duck_typing" target="_blank">Duck typing</a> in Delphi XE2 (not XE):</p>
<blockquote><p><strong>Duck Duck Delphi</strong></p>
<p>DuckDuckDelphi is an Open Source (MIT License) unit for Delphi XE2 which adds duck typing functionality to a normally strongly typed language.</p></blockquote>
<p>Great stuff that makes a truckload of my code so much easier to maintain.</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://arcana.sivv.com/duckduckdelphi" target="_blank">arcana &#8211; DuckDuckDelphi</a>.</p>
<p>(Edit: 1400 UTC+1 Sorry, wrong boolean; wrote &#8220;and&#8221; but should be &#8220;not&#8221; XE).</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7797/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7797/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7797/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7797&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/02/16/jason-southwell-from-arcana-just-published-duckduckdelphi-a-unit-to-do-duck-typing-in-delphi-xe2-and-xe/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>There is a great Android Design &#8211; UI Overview site, but no great UI design tools for Android</title>
		<link>http://wiert.me/2012/02/15/there-is-a-great-android-design-ui-overview-site-but-no-great-ui-design-tools/</link>
		<comments>http://wiert.me/2012/02/15/there-is-a-great-android-design-ui-overview-site-but-no-great-ui-design-tools/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 05:00:05 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iOS Development]]></category>
		<category><![CDATA[Mobile Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Windows Phone Development]]></category>

		<guid isPermaLink="false">http://wiert.me/?p=7472</guid>
		<description><![CDATA[Recently the Android Design site was launched with great explanation on how to properly design UIs for Android Apps. Like Apple&#8217;s iOS Human Interface Guidelines and Microsoft&#8217;s User Experience Design Guidelines for Windows Phone they are a must for any mobile developer. Together with sites like Android UI Design Patterns, and mockup stencil tools, more Android UI mockup sketch tools [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7472&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently the <a href="http://developer.android.com/design/get-started/ui-overview.html">Android Design</a> site was launched with great explanation on how to properly design UIs for Android Apps.</p>
<p>Like <a href="http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html" target="_blank">Apple&#8217;s iOS Human Interface Guidelines</a> and Microsoft&#8217;s <a href="http://msdn.microsoft.com/en-us/library/hh202915(v=VS.92).aspx" target="_blank">User Experience Design Guidelines for Windows Phone</a> they are a must for any mobile developer.</p>
<p>Together with sites like <a href="http://www.androiduipatterns.com/" target="_blank">Android UI Design Patterns</a>, and <a href="http://speckyboy.com/2010/05/10/android-app-developers-gui-kits-icons-fonts-and-tools/" target="_blank">mockup stencil tools</a>, <a href="http://www.androiduipatterns.com/2012/01/best-design-tools-for-android.html" target="_blank">more Android UI mockup sketch tools and stencils</a> allow you to give prospective users an impression on how an app might be looking like when developed.</p>
<p>What is lacking is a set of real Android GUI design tools. The kind of tools like the <a href="http://developer.apple.com/library/mac/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/InterfaceBuilder/InterfaceBuilder.html" target="_blank">Xcode Interface Builder for iOS</a>, or <a href="http://www.microsoft.com/expression/windowsphone/Default.aspx" target="_blank">Expression Blend for Windows Phone</a> that &#8211; together with <a href="http://mobile.tutsplus.com/tutorials/mobile-design-tutorials/iphone-design-templates/" target="_blank">iOS PSD templates</a> or <a href="http://rhizohm.net/irhetoric/post/2010/10/04/Windows-Phone-7-XAML-Design-Templates.aspx" target="_blank">Windows Phone design templates</a> (<a href="http://wp7designtemplates.codeplex.com/" target="_blank">and more templates</a>) &#8211; give you a killer start.</p>
<p>Also note Delphi XE2 that has a great UI designer which has consistently covered Windows UI design for 15+ years, including multi-touch and gesture support, and now covers Mac OS X and iOS for HD and 3D apps (but not yet with multi-touch or gesture support).</p>
<p>The only design tool for Android I could find is <a href="http://www.droiddraw.org/" target="_blank">DroidDraw</a> that emits the XML needed for Android UIs. It is painfully slow and lacks basic things like a property window to edit properties of UI elements.</p>
<p>Given the number of Android app developers, there is much room for improvement.</p>
<ul>
<li>Am I missing something here?</li>
<li>What kind of tools are you using?</li>
</ul>
<p>&#8211;jeroen</p>
<p>via: <a href="http://developer.android.com/design/get-started/ui-overview.html">Android Design &#8211; UI Overview</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/mobile-development/android-mobile-development/'>Android</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/mobile-development/ios-development/'>iOS Development</a>, <a href='http://wiert.me/category/development/mobile-development/'>Mobile Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/mobile-development/windows-phone-development/'>Windows Phone Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7472/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7472&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/02/15/there-is-a-great-android-design-ui-overview-site-but-no-great-ui-design-tools/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>great answer by Remy Lebeau on windows &#8211; CreateProcessAsUser doesn&#8217;t work when &#8220;change user&#8221; &#8211; on Stack Overflow part of @StackExchange</title>
		<link>http://wiert.me/2012/01/10/great-answer-by-remy-lebeau-on-windows-createprocessasuser-doesnt-work-when-change-user-on-stack-overflow-part-of-stackexchange/</link>
		<comments>http://wiert.me/2012/01/10/great-answer-by-remy-lebeau-on-windows-createprocessasuser-doesnt-work-when-change-user-on-stack-overflow-part-of-stackexchange/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 05:00:46 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7255</guid>
		<description><![CDATA[You might wonder why I quoted two great StackOverflow answers recently. Well, it is because I absolutely love the way that StackExchange.com and StackOverflow.com changed how to find quality answers (and questions!) on topics varying from programmers through Cooking to Chines Language Usage in a community based way. This one is by Remy Lebeau, who is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7255&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>You might wonder why I quoted two great StackOverflow answers recently. Well, it is because I absolutely love the way that <a href="http://stackexchange.com/about" target="_blank">StackExchange.com and StackOverflow.com</a> changed how to find quality answers (and questions!) on topics varying from <a href="http://stackoverflow.com/" target="_blank">programmers</a> through <a href="http://cooking.stackexchange.com/" target="_blank">Cooking</a> to <a href="http://chinese.stackexchange.com/" target="_blank">Chines Language Usage</a> in a community based way.</p>
<p>This one is by <a href="http://stackoverflow.com/users/65863/remy-lebeau-teamb" target="_blank">Remy Lebeau</a>, who is part of <a href="http://www.teamb.com/" target="_blank">TeamB</a>:</p>
<blockquote><p>You don&#8217;t need to enumerate running explorer.exe processes, you can use WTSGetActiveConsoleSessionId() instead, and then pass that SessionId to WTSQueryUserToken(). Note that WTSQueryUserToken() returns an impersonation token but CreateProcessAsUser() needs a primary token, so use DuplicateTokenEx() for that conversion.</p>
<p>You should also use CreateEnvironmentBlock() so the spawned process has a proper environment that is suited to the user account that is being used.</p>
<p>Lastly, set the STARTUPINFO.lpDesktop field to &#8216;WinSta0\Default&#8217; instead of nil so the spawned UI can be made visible correctly.</p>
<p>I have been using this approach for several years now and have not had any problems with it. For example:</p>
<p>&#8230; code sample is in the answer &#8230;</p></blockquote>
<p>&#8211;jeroen</p>
<p>via: <a href="http://stackoverflow.com/questions/8081429/createprocessasuser-doesnt-work-when-change-user">windows &#8211; CreateProcessAsUser doesn&#8217;t work when &#8220;change user&#8221; &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7255/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7255&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/01/10/great-answer-by-remy-lebeau-on-windows-createprocessasuser-doesnt-work-when-change-user-on-stack-overflow-part-of-stackexchange/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Great answer by Cosmin Prund: How and when are variables referenced in Delphi&#8217;s anonymous methods captured? &#8211; Stack Overflow</title>
		<link>http://wiert.me/2012/01/05/great-answer-by-cosmin-prund-how-and-when-are-variables-referenced-in-delphis-anonymous-methods-captured-stack-overflow/</link>
		<comments>http://wiert.me/2012/01/05/great-answer-by-cosmin-prund-how-and-when-are-variables-referenced-in-delphis-anonymous-methods-captured-stack-overflow/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 05:00:27 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7252</guid>
		<description><![CDATA[Every once in a while, by accident you stumble on a really great answer on StackOverflow. Here is a quote from Cosmin Prund describing on how Delphi implements anonymous methods using a TInterfacedObject descendant: When you have a function like the one in the question, where you have an anonymous method accessing a local variable, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7252&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Every once in a while, by accident you stumble on a really great answer on StackOverflow.</p>
<p>Here is a quote from <a href="http://stackoverflow.com/users/282676/cosmin-prund" target="_blank">Cosmin Prund</a> describing on how Delphi implements anonymous methods using a TInterfacedObject descendant:</p>
<blockquote><p>When you have a function like the one in the question, where you have an anonymous method accessing a local variable, Delphi appears to create one TInterfacedObject descendant that captures all the stack based variables as it&#8217;s own public variables. Using Barry&#8217;s trick to get to the implementing TObject and a bit of RTTI we can see this whole thing in action.</p></blockquote>
<p>Read his <a href="http://stackoverflow.com/questions/5154914/how-and-when-are-variables-referenced-in-delphis-anonymous-methods-captured/5154920#5154920" target="_blank">full answer</a> for the complete description including sample code.</p>
<p>I stumbled on this great answer trough the question <a href="http://stackoverflow.com/questions/8080493/is-it-possible-for-a-managed-local-variable-to-transparently-travel-to-another">Is it possible for a managed local variable to transparently “travel to” another local scope?</a> which might sound like an odd question, but it is not: StackOverflow is about learning, and some people do that by asking questions on solving problems in a very uncommon way, just to learn there are far better ways of obtaining what they want.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://stackoverflow.com/questions/5154914/how-and-when-are-variables-referenced-in-delphis-anonymous-methods-captured/5154920#5154920">How and when are variables referenced in Delphi&#8217;s anonymous methods captured? &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7252/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7252/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7252/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7252&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2012/01/05/great-answer-by-cosmin-prund-how-and-when-are-variables-referenced-in-delphis-anonymous-methods-captured-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Many more web platforms vulnerable to the hash collision attack (not only ASP.NET) #28C3 @hashDoS #hashDoS @ccc</title>
		<link>http://wiert.me/2011/12/29/many-more-web-platforms-vulnerable-to-the-hash-collision-attack-not-only-asp-net-28c3-hashdos-hashdos-ccc/</link>
		<comments>http://wiert.me/2011/12/29/many-more-web-platforms-vulnerable-to-the-hash-collision-attack-not-only-asp-net-28c3-hashdos-hashdos-ccc/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 12:00:36 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Windows Azure]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7244</guid>
		<description><![CDATA[When writing my Patch your ASP.NET servers ASAP early this morning, I didn&#8217;t have time to research the full extend of the vulnerabilities published at 28C3 (slides, mp4), though a small bell was ringing a message that I had seen something like it before earlier this century. I was right, this posting on perlmonks direct me to a /. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7244&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When writing my <a href="http://wiert.wordpress.com/2011/12/29/patch-your-asp-net-servers-asap-asp-net-security-update-shipping-thursday-dec-29th-scottgus-blog/">Patch your ASP.NET servers ASAP</a> early this morning, I didn&#8217;t have time to research the full extend of the <a href="http://events.ccc.de/congress/2011/Fahrplan/events/4680.en.html" target="_blank">vulnerabilities published at 28C3</a> (<a href="http://events.ccc.de/congress/2011/Fahrplan/attachments/2007_28C3_Effective_DoS_on_web_application_platforms.pdf" target="_blank">slides</a>, <a href="http://mirror.fem-net.de/CCC/28C3/mp4-h264-HQ/28c3-4680-en-effective_dos_attacks_against_web_application_platforms_h264.mp4" target="_blank">mp4</a>), though a small bell was ringing a message that I had seen something like it before earlier this century.</p>
<p>I was right, this <a href="http://www.perlmonks.org/?node_id=262191" target="_blank">posting on perlmonks</a> direct me to a <a href="http://slashdot.org/story/03/05/31/2157254/denial-of-service-via-algorithmic-complexity" target="_blank">/. posting in 2003</a> pointing me to the <a href="http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003/index.html" target="_blank">research paper on low-bandwidth attacks based on hash collisions</a> (<a href="http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf" target="_blank">pdf version</a>) that I had seen before. <a href="http://cpansearch.perl.org/src/JHI/perl-5.8.1/Changes" target="_blank">Perl 5.8.1 fixed it September 2003</a> (search for &#8220;hash&#8221; in that link).</p>
<p>The attack can be used for DoS because a normal distributed hash table insert of n elements will be running O(n), but a carefully crafted insert of those elements will run O(n^2).</p>
<p>Carefully crafting a worst case scenario depends on how well you can predict collisions in the underlying hash table implementation, which - apparently - is not too difficult, and requires little bandwidth.</p>
<p><a href="http://permalink.gmane.org/gmane.comp.security.full-disclosure/83694" target="_blank">Many platforms and languages are vulnerable</a>, including those based on Java, Tomcat, .NET, Ruby, PHP and more in greater or lesser extent. I have the impression that the list only includes big names, but presume platforms based on smaller names (ASP, Delphi, Objective C) are equally vulnerable.</p>
<p>Just read the articles on <a href="http://www.kb.cert.org/vuls/id/903934" target="_blank">CERT 903934</a>, <a href="http://www.ocert.org/advisories/ocert-2011-003.html" target="_blank">oCERT 2011-003</a>, <a href="http://arstechnica.com/business/news/2011/12/huge-portions-of-web-vulnerable-to-hashing-denial-of-service-attack.ars" target="_blank">Arstechnica</a>, <a href="http://cryptanalysis.eu/blog/2011/12/28/effective-dos-attacks-against-web-application-plattforms-hashdos/" target="_blank">Cryptanalysis.eu</a>, <a href="http://www.heise.de/security/meldung/28C3-Denial-of-Service-Attacken-auf-Web-Applikationen-leicht-gemacht-1401784.html" target="_blank">Heise (German)</a>, <a href="http://www.hackillusion.com/hashdos-a-new-denial-of-service-attack/" target="_blank">Hackillusion</a> and <a href="http://www.nruns.com/_downloads/advisory28122011.pdf" target="_blank">the research paper published at 28C3</a>.</p>
<p>a few quotes:</p>
<blockquote><p>&#8220;This attack is mostly independent of the underlying Web application and just relies on a common fact of how Web application servers typically work,&#8221; the team wrote, noting that such attacks would force Web application servers &#8220;to use 99% of CPU for several minutes to hours for a single HTTP request.&#8221;</p>
<p>&#8220;Prior to going public, Klink and Wälde contacted vendors and developer groups such as PHP, Oracle, Python, Ruby, Google, and Microsoft. The researchers noted that the Ruby security team and Tomcat have already released fixes, and that &#8220;Oracle has decided there is nothing that needs to be fixed within Java itself, but will release an updated version of Glassfish in a future CPU (critical patch update).&#8221;</p>
<p>&#8220;The algorithmic complexity of inserting n elements into the<br />
table then goes to O(n**2), making it possible to exhaust hours of CPU time using a single HTTP request&#8221;</p>
<p>&#8220;We show that PHP 5, Java, ASP.NET as well as v8 are fully vulnerable to this issue and PHP 4,<br />
Python and Ruby are partially vulnerable, depending on version or whether the server<br />
running the code is a 32 bit or 64 bit machine.&#8221;</p></blockquote>
<p>Microsoft seems to have been notified pretty late in the cycle, I presume because the researchers started with a some platforms and finally realized the breath of platforms involved.</p>
<p>The ultimate solution is to patch/fix the platforms using for instance a randomized hash function a.k.a. <a href="http://en.wikipedia.org/wiki/Universal_hashing" target="_blank">universal hashing</a>.</p>
<p><a href="http://www.livehacking.com/2011/12/29/microsoft-first-to-patch-universal-hash-table-collision-vulnerability-with-out-of-band-update/" target="_blank">Microsoft will provide a patch for ASP.NET later today, Ruby already patched</a> and other vendors will soon or have already (please comment if you know of other platforms and patches).</p>
<p>The links this morning indicated there were no known attacks. That is (maybe was) true for ASP.NET, but for PHP a <a href="https://twitter.com/#!/kkotowicz/status/152192879161393153" target="_blank">public proof of concept of such a DoS is has been published</a> by <a href="https://twitter.com/#!/kkotowicz" target="_blank">Krzysztof Kotowicz</a> (<a href="http://blog.kotowicz.net/" target="_blank">blog</a>) with <a href="https://github.com/koto/blog-kotowicz-net-examples/tree/master/hashcollision" target="_blank">sources at github</a> and a <a href="http://koto.github.com/blog-kotowicz-net-examples/hashcollision/kill.html" target="_blank">demo html page</a>.</p>
<p>Temporary workarounds (based on the some of the links in this and the prior blog post, and the workarounds mentioned <a href="http://technet.microsoft.com/en-us/security/advisory/2659883" target="_blank">here</a> and <a href="http://blogs.technet.com/b/srd/archive/2011/12/27/more-information-about-the-december-2011-asp-net-vulnerability.aspx" target="_blank">here</a>):</p>
<ol>
<li>If you can: replace hash tables by more applicable data structures<br />
(I know this falls in the <a href="http://blogs.msdn.com/b/oldnewthing/archive/2011/12/27/10251210.aspx" target="_blank">for-if anti-pattern</a> category, but lots of people still use a hammer when a different tool works much better)</li>
<li>Limit the request size</li>
<li>Limit the maximum number of entries in the hash table</li>
<li>Limit form requests only for sites/servers/etc that need it.</li>
<li>Limit the CPU time that a request can use</li>
<li>Filter out requests with large number of form entries</li>
</ol>
<p>Some platforms already have applied temporary workarounds (I know of <a href="http://svn.apache.org/viewvc?view=revision&amp;revision=1189899" target="_blank">Tomcat (default max 10000 parameters)</a>, and <a href="https://svn.php.net/repository/php/php-src/tags/php_5_4_0RC4/NEWS" target="_blank">PHP (default max_input_vars = 1000)</a> did, and <a href="https://twitter.com/#!/matevzg/status/152331393739923456" target="_blank">looks like the ASP.NET fix will do too</a>).</p>
<p>Other platforms (like <a href="http://www.jruby.org/2011/12/27/jruby-1-6-5-1" target="_blank">JRuby 1.6.5.1</a>, <a href="http://www.ruby-forum.com/topic/3312298" target="_blank">CRuby 1.8.7</a> (<a href="http://www.ruby-lang.org/en/news/2011/12/28/denial-of-service-attack-was-found-for-rubys-hash-algorithm-cve-2011-4815/" target="_blank">comments</a>) and <a href="http://cpansearch.perl.org/src/JHI/perl-5.8.1/Changes" target="_blank">Perl 5.8.1 in September 2003</a> ) fixed it the proper way.</p>
<p>Note: workarounds are temporary measures that will also deny legitimate requests. The only solution is to apply a fix or patch.</p>
<p>A major lesson learned today for a few people around me: when vendors start publishing &#8220;out of band&#8221; updates, do not trust a single 3rd party assessment with state &#8220;initial investigation&#8221;, but be diligent and do some further research.</p>
<p>&#8211;jeroen</p>
<p>PS: Just found out that <a href="http://blogs.technet.com/b/austria/archive/2011/12/29/microsoft-k-252-ndigt-fix-f-252-r-asp-net-hashdos-an-azure-wird-automatisch-gefixt.aspx" target="_blank">most Azure users won&#8217;t need to manually apply a fix</a>: just make sure your Hosted Service OS servicing policy is set to &#8220;Auto&#8221;.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/asp-net/'>ASP.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/java/'>Java</a>, <a href='http://wiert.me/category/development/software-development/web-development/javascript/'>JavaScript</a>, <a href='http://wiert.me/category/development/software-development/scripting/php/'>PHP</a>, <a href='http://wiert.me/category/development/software-development/scripting/'>Scripting</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/web-development/'>Web Development</a>, <a href='http://wiert.me/category/development/software-development/cloud-development/windows-azure/'>Windows Azure</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7244/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7244&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/29/many-more-web-platforms-vulnerable-to-the-hash-collision-attack-not-only-asp-net-28c3-hashdos-hashdos-ccc/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
<enclosure url="http://mirror.fem-net.de/CCC/28C3/mp4-h264-HQ/28c3-4680-en-effective_dos_attacks_against_web_application_platforms_h264.mp4" length="358379192" type="video/mp4" />
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Added a few links to my &#8220;Tools&#8221;  page, @WordPress bug spuriously inserting div tags still present.</title>
		<link>http://wiert.me/2011/12/28/added-a-few-links-to-my-tools-page-wordpress-bug-spuriously-inserting-div-tags-still-present/</link>
		<comments>http://wiert.me/2011/12/28/added-a-few-links-to-my-tools-page-wordpress-bug-spuriously-inserting-div-tags-still-present/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 05:00:22 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[TFS (Team Foundation System)]]></category>
		<category><![CDATA[Visual Studio 2008]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Visual Studio and tools]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7217</guid>
		<description><![CDATA[While re-designing a Visual Studio 2010 plus Delphi XE2 install for a specific client, I updated some of my Tools page links: Delphi tools ModelMaker Code Explorer GExperts with experimental find extension CodeRush Visual Studio 2010 Power Tools (all from the VS2010 tools gallery): - Productivity Power Tools (download) - Spec Explorer 2010 Visual Studio Power Tool (download) - Team Foundation Server Power Tools (download) [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7217&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>While re-designing a Visual Studio 2010 plus Delphi XE2 install for a specific client, I updated some of my Tools page links:</p>
<ul>
<li>Delphi tools<br />
<a href="http://www.modelmakertools.com/code-explorer/index.html" target="_blank">ModelMaker Code Explorer</a><br />
<a href="http://www.gexperts.org/" target="_blank">GExperts</a> with <a href="http://www.dummzeuch.de/delphi/gexperts/english.html" target="_blank">experimental find extension</a></li>
<li><a href="http://devexpress.com/coderush" target="_blank">CodeRush</a></li>
<li><a href="http://msdn.microsoft.com/en-us/vstudio/bb980963.aspx" target="_blank">Visual Studio 2010 Power Tools</a> (all from the <a href="http://visualstudiogallery.msdn.microsoft.com/site/search?f%5B0%5D.Type=RootCategory&amp;f%5B0%5D.Value=tools&amp;f%5B1%5D.Type=VisualStudioVersion&amp;f%5B1%5D.Value=10.0&amp;f%5B1%5D.Text=Visual%20Studio%202010" target="_blank">VS2010 tools gallery</a>):<br />
- <a href="http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef/" target="_blank">Productivity Power Tools</a> (<a href="http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef/file/29666/12/ProPowerTools.vsix" target="_blank">download</a>)<br />
- <a href="http://visualstudiogallery.msdn.microsoft.com/271d0904-f178-4ce9-956b-d9bfa4902745/" target="_blank">Spec Explorer 2010 Visual Studio Power Tool</a> (<a href="http://visualstudiogallery.msdn.microsoft.com/271d0904-f178-4ce9-956b-d9bfa4902745/file/36449/2/SpecExplorer.msi" target="_blank">download</a>)<br />
- <a href="http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f" target="_blank">Team Foundation Server Power Tools</a> (<a href="http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f/file/35473/4/tfpt.msi" target="_blank">download</a>)</li>
<li>Visual Studio 2008 Power Tools:<br />
- <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fbd14eea-781f-45a1-8c46-9f6ba2f68bf0&amp;DisplayLang=en" target="_blank">VSTS 2008 TFS Power Tools</a>(download)<br />
- <a href="http://code.msdn.microsoft.com/PowerCommands" target="_blank">Visual Studio 2008 PowerCommands</a> (<a href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=PowerCommands&amp;DownloadId=951" target="_blank">download</a>)</li>
<li><a href="http://www.attrice.info/cm/tfs/" target="_blank">Team Foundation Server Sidekicks</a> (download <a href="http://www.attrice.info/downloads/index.htm#tfssidekicks" target="_blank">2.4 for TFS 2008</a>, and <a href="http://www.attrice.info/downloads/index.htm#tfssidekicks2010" target="_blank">3.0 for TFS 2010</a>)</li>
<li><a href="http://www.gexperts.org/files/beta/" target="_blank">SourcePad</a></li>
</ul>
<div>And found out that the <a href="http://wiert.wordpress.com/2011/10/03/wordpress-%E2%80%BA-support-%C2%BB-wordpress-is-inserting-div-tags/" target="_blank">WordPress still wrongly inserts div tags when you step out a list by pressing Enter twice</a> is still present. Annoying, as it has been there for at least 2 years, so I&#8217;m still interesting in people having a workaround for it.</div>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/source-code-management/tfs-team-foundation-system/'>TFS (Team Foundation System)</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2008/'>Visual Studio 2008</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2010/'>Visual Studio 2010</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/'>Visual Studio and tools</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7217/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7217/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7217/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7217&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/28/added-a-few-links-to-my-tools-page-wordpress-bug-spuriously-inserting-div-tags-still-present/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Applying XE2 Update 3: uninstall IDE Fix Pack first, then apply, then install updated IDE Fix Pack. Also update EurekaLog.</title>
		<link>http://wiert.me/2011/12/22/applying-xe2-update-3-uninstall-ide-fix-pack-first-then-apply-then-install-updated-ide-fix-pack-also-update-eurekalog/</link>
		<comments>http://wiert.me/2011/12/22/applying-xe2-update-3-uninstall-ide-fix-pack-first-then-apply-then-install-updated-ide-fix-pack-also-update-eurekalog/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 05:00:15 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi x64]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7145</guid>
		<description><![CDATA[Before installing updates, it is always wise to read the release notes. In this case, the below quote from the Release Notes for XE2 Update 3 was very important for me, as I use the IDE Fix Pack: IDE Fix Pack Is Not Compatible with Update 3 The IDE Fix Pack for XE2 is incompatible with XE2 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7145&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Before installing updates, it is always wise to read the release notes.</p>
<p>In this case, the below quote from the <a href="http://docwiki.embarcadero.com/RADStudio/en/Release_Notes_for_XE2_Update_3#Downloading_from_the_Registered_Users_Web_Page">Release Notes for XE2 Update 3</a> was very important for me, as I use the IDE Fix Pack:</p>
<blockquote><p><strong>IDE Fix Pack Is Not Compatible with Update 3</strong></p>
<p>The IDE Fix Pack for XE2 is incompatible with XE2 Update 3. If you have the IDE Fix Pack for XE2, you should uninstall the IDE Fix Pack for XE2 before installing Update 3. A revised version of the IDE Fix Pack for XE2 will be made available at <a href="http://andy.jgknet.de/fixpack/" target="_blank">http://andy.jgknet.de/fixpack/</a> .</p></blockquote>
<p>The cool thing is, on the same day that <a href="http://www.delphifeeds.com/go/s/87407" target="_blank">Delphi XE2 Update 3 got released</a>, <a href="http://andy.jgknet.de/blog/2011/12/ide-fix-pack-4-6-supports-xe2-update-3/" target="_blank">Andy also released the new FixPack 4.6 last week</a> and also explained the cause of the incompatibility.</p>
<p>Note that because of the same reason, more products will need to be updated. <a href="http://www.delphifeeds.com/go/s/87559" target="_blank">EurekaLog also released an update</a>, and I expect more vendors to release updates soon.</p>
<p>Update 3 breaks the monthly release cycle, but for a reason. This update contains way more fixes than the previous ones, in a much wider area and with short turnarounds between reporting and fixing (yes, it does pay to <a href="http://qc.embarcadero.com/wc/qcmain.aspx" target="_blank">report bugs through QualityCentral</a>). Just <a href="http://edn.embarcadero.com/article/41831/" target="_blank">read the list of fixes</a>. It is similar to the big updates we used to have for previous Delphi versions.</p>
<p>It also requires a lot more disk space, so make sure you have at least 5 gigabytes of free disk space.</p>
<p>Not related to Update 3, but still nice is that <a href="http://www.dummzeuch.de/privat/english.html" target="_blank">Thomas Müller</a> made <a href="http://www.dummzeuch.de/delphi/gexperts/english.html" target="_blank">available for download</a> the <a href="http://www.delphifeeds.com/go/s/87504" target="_blank">Expertimental GExperts version 1.35-2011-12-18</a> that is compatible with Delphi XE2. It includes a code formatter that has different bugs than the Delphi XE2 one, but for me usually works better.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://docwiki.embarcadero.com/RADStudio/en/Release_Notes_for_XE2_Update_3#Downloading_from_the_Registered_Users_Web_Page">Release Notes for XE2 Update 3 &#8211; RAD Studio XE2</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-x64/'>Delphi x64</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7145/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7145/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7145&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/22/applying-xe2-update-3-uninstall-ide-fix-pack-first-then-apply-then-install-updated-ide-fix-pack-also-update-eurekalog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 and iOS: things you should not do</title>
		<link>http://wiert.me/2011/12/20/delphi-xe2-and-ios-things-you-should-not-do/</link>
		<comments>http://wiert.me/2011/12/20/delphi-xe2-and-ios-things-you-should-not-do/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 05:00:58 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[xCode/Mac/iPad/iPhone/iOS/cocoa]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7061</guid>
		<description><![CDATA[When developing applications for iOS using Delphi XE2, it uses a smart but convoluted FPC detour. That results in a few things you should take into account when developing iOS applications: Do not use Unit scope identifiers (that&#8217;s why for instance the FireMonkey unit FMX.Dialogs is called FMX_Dialogs when building an iOS application) So don&#8217;t [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7061&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When developing applications for iOS using Delphi XE2, it uses a smart but convoluted FPC detour.</p>
<p>That results in a few things you should take into account when developing iOS applications:</p>
<ul>
<li>Do not use Unit scope identifiers (that&#8217;s why for instance the FireMonkey unit FMX.Dialogs is called FMX_Dialogs when building an iOS application)<br />
So don&#8217;t do a &#8220;uses System.SysUtils&#8221;, but &#8220;uses SysUtils&#8221; and don&#8217;t name your units using Unit scope identifiers for now.<br />
It would be so nice if Embarcadero shipped the tool that made all the FMX_* units out of the FMX.* units; that alone would make code sharing between non-iOS and iOS applications in Delphi a lot easier.</li>
<li>Do not use Generics (though FPC supports them, the FPC mode that Delphi XE2 uses for iOS compatibility does not)</li>
<li>Do not use new style RTTI or TValue (they are not supported by FPC)</li>
<li>Do not use any other dataset than the ones directly descending from TDataSet (so anything TClientDataSet or IBX like is out) mostly because those depend on external C obj files, Unit scope identifiers or new style RTTI</li>
<li>Do not spread your application sources over multiple directories</li>
<li>Do not use the TMyDynamicArray.Create shortcut of initializing dynamic arrays, but <a href="http://stackoverflow.com/a/2302647/29290" target="_blank">use a wrapper function that uses Open Array parameters as Rob Kennedy explains on StackOverflow</a>.</li>
<li>Do not run dpr2xcode after you have changed any files it generated (believe me, you will change those). This basically makes you have to reinvent most of the dpr2xcode logic, which is a real pain, as I&#8217;m still in that process and not completed.<br />
These are the things you usually want to manually keep track of:<br />
- most of the manual changes are keeping the &#8220;YourProject.dpr&#8221; and dpr2xcode generated &#8220;YourProject.pas&#8221; in sync<br />
- altering the PNG files to show different splash graphics / application icons</li>
</ul>
<p>I will extend this list over time.</p>
<p>Note that this detour should be gone in a future Delphi version, but for now you need to take the above into account.</p>
<p>It means that you might feel like programming with one hand behind your back. Well, the Objective C and Xcode way feels very similar, but from a different perspective <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/xcodemacipadiphoneioscocoa/'>xCode/Mac/iPad/iPhone/iOS/cocoa</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7061/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7061/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7061/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7061&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/20/delphi-xe2-and-ios-things-you-should-not-do/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Asphyre Sphinx 2: X-platform game development for Delphi XE2 and/or FPC</title>
		<link>http://wiert.me/2011/12/15/asphyre-sphinx-2-x-platform-game-development-for-delphi-xe2-andor-fpc/</link>
		<comments>http://wiert.me/2011/12/15/asphyre-sphinx-2-x-platform-game-development-for-delphi-xe2-andor-fpc/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 05:00:50 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7018</guid>
		<description><![CDATA[Just found out that during my holiday, Asphyre Sphinx 2 was released: a free 2D/3D framework for X-platform game development that comes with full source code. It is based on FireMonkey supports Delphi XE2 Update 1 and up, and FPC (and yes: it supports on iOS too). Interesting stuff! &#8211;jeroen Via: Asphyre Sphinx 2. Filed under: Delphi, Development, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7018&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just found out that during my holiday, <a href="http://www.afterwarp.net/products/asphyresphinx2">Asphyre Sphinx 2</a> was released: a free 2D/3D framework for X-platform game development that comes with full source code.</p>
<p>It is based on FireMonkey supports Delphi XE2 Update 1 and up, and FPC (and yes: <a href="http://asphyre.afterwarp.net/index.php?title=Using_Asphyre_on_iOS" target="_blank">it supports on iOS</a> too).</p>
<p>Interesting stuff!</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://www.afterwarp.net/products/asphyresphinx2">Asphyre Sphinx 2</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7018/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7018/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7018/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7018&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/15/asphyre-sphinx-2-x-platform-game-development-for-delphi-xe2-andor-fpc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Trouble with Google Reader and GEXperts RSS feed :)</title>
		<link>http://wiert.me/2011/12/07/trouble-with-google-reader-and-gexperts-rss-feed/</link>
		<comments>http://wiert.me/2011/12/07/trouble-with-google-reader-and-gexperts-rss-feed/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 12:17:17 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7038</guid>
		<description><![CDATA[While catching up my feeds after an astonishing holiday around the Antarctic Peninsula (some photos at Flickr), I bumped into a Google Reader issue with the GExperts.com RSS feed: all posts seem to be stamped 20111117T0555. Funny, as I remember being late to report GExperts 1.35 for Delphi XE2 was released a while a go [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7038&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>While catching up my feeds after an astonishing holiday around the Antarctic Peninsula (<a href="www.flickr.com/photos/jwpluimers/sets/72157628145167435" target="_blank">some photos at Flickr</a>), I bumped into a Google Reader issue with the <a href="http://www.gexperts.org/feed/" target="_blank">GExperts.com RSS feed</a>: all posts seem to be stamped 20111117T0555.</p>
<p>Funny, as I remember <a href="http://wiert.wordpress.com/2011/09/28/bltn-gexperts-build-1-35-for-delphi-and-rad-studio-xe2/" target="_blank">being late to report GExperts 1.35 for Delphi XE2</a> was released a while a go <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>It reminded me to ask Thomas to publish the XE2 version of his <a href="http://www.dummzeuch.de/delphi/gexperts/english.html" target="_blank">Experimental GExperts build</a> though.</p>
<p>Lets hope he is faster than me catching up <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.google.com/reader/view/#stream/feed%2Fhttp%3A%2F%2Fgexperts.org%2Ffeed%2Frss.html">Google Reader feed for GExperts.org</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7038/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7038&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/07/trouble-with-google-reader-and-gexperts-rss-feed/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>When writing applications, include Keyboard Shortcuts for both the CUA and Windows/Apple shortcuts</title>
		<link>http://wiert.me/2011/12/06/when-writing-applications-include-keyboard-shortcuts-for-both-the-cua-and-windowsapple-shortcuts/</link>
		<comments>http://wiert.me/2011/12/06/when-writing-applications-include-keyboard-shortcuts-for-both-the-cua-and-windowsapple-shortcuts/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 05:00:46 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Keyboards and Keyboard Shortcuts]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[xCode/Mac/iPad/iPhone/iOS/cocoa]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6943</guid>
		<description><![CDATA[When you write applications, it is important to include both the CUA and the Windows/Apple keyboard shortcuts, and get the tab order of keyboard accessible user elements right. Many modern applications seem to put less and less emphasis on the most efficient user input device: the keyboard. You should: it makes your application much more [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6943&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When you write applications, it is important to include both the CUA and the Windows/Apple keyboard shortcuts, and get the tab order of keyboard accessible user elements right.</p>
<p>Many modern applications seem to put less and less emphasis on the most efficient user input device: the keyboard.</p>
<p>You should: it makes your application much more pleasant to use.</p>
<p><a href="http://wiert.wordpress.com/2010/07/16/solution-cant-paste-on-a-web-site-with-ctrl-v/" target="_blank">I wrote about CUA before</a>, but the Windows and Mac shortcuts are just as important.</p>
<p>A small table (please post a comment if you know additions):</p>
<table dir="ltr" summary="Keyboard Shortcuts for the most common editing tasks" width="500" border="1">
<caption>Keyboard Shortcuts for the most common tasks.</caption>
<thead>
<tr>
<th scope="col">Function</th>
<th scope="col">CUA</th>
<th scope="col">Windows</th>
<th scope="col">Mac</th>
</tr>
</thead>
<tbody>
<tr>
<td>Copy</td>
<td>Ctrl + Insert</td>
<td>Ctrl + C</td>
<td>Command + C</td>
</tr>
<tr>
<td>Cut</td>
<td>Shift + Delete</td>
<td>Ctrl + X</td>
<td>Command + X</td>
</tr>
<tr>
<td>Paste</td>
<td>Shift + Insert</td>
<td>Ctrl + V</td>
<td>Command + V</td>
</tr>
<tr>
<td>Delete before cursor</td>
<td>Backspace</td>
<td></td>
<td>Delete</td>
</tr>
<tr>
<td>Delete after cursor</td>
<td>Delete</td>
<td></td>
<td>Fn + Delete</td>
</tr>
<tr>
<td>Undo</td>
<td>Alt + Backspace</td>
<td>Ctrl + Z</td>
<td>Command + Z</td>
</tr>
<tr>
<td>Redo</td>
<td></td>
<td>Ctrl + Y</td>
<td>Command + Y</td>
</tr>
<tr>
<td>Confirm the current task</td>
<td>Enter</td>
<td></td>
<td>Return</td>
</tr>
<tr>
<td>Cancel the current task</td>
<td>Escape</td>
<td></td>
<td>Escape</td>
</tr>
<tr>
<td>Next field</td>
<td>Tab</td>
<td></td>
<td>Tab</td>
</tr>
<tr>
<td>Previous field</td>
<td>Shift + Tab</td>
<td></td>
<td>Shift + Tab</td>
</tr>
<tr>
<td>Next pane</td>
<td></td>
<td>Ctrl + F6</td>
<td></td>
</tr>
<tr>
<td>Previous pane</td>
<td></td>
<td>Alt + F6</td>
<td></td>
</tr>
<tr>
<td>Next window</td>
<td></td>
<td>F6</td>
<td> Cmd + `</td>
</tr>
<tr>
<td>Previous window</td>
<td></td>
<td>Shift + F6</td>
<td></td>
</tr>
<tr>
<td>Application menu</td>
<td></td>
<td>Alt + Space</td>
<td></td>
</tr>
<tr>
<td>Windows menu</td>
<td></td>
<td>⊞</td>
<td></td>
</tr>
<tr>
<td>Local menu</td>
<td>Shift + F10</td>
<td>Local Menu</td>
<td></td>
</tr>
</tbody>
</table>
<p>Note that many Linux programs follow both the CUA and Windows settings.</p>
<p>References:</p>
<ul>
<li>CUA: <a href="http://publib.boulder.ibm.com/cgi-bin/bookmgr/Shelves/ceesl002" target="_blank">SAA Common User Access Bookshelf</a></li>
<li>Windows: <a href="http://msdn.microsoft.com/en-us/library/ms971323.aspx" target="_blank">Guidelines for Keyboard User Interface Design</a></li>
<li>HIG: <a href="http://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/AppleHIGuidelines/KeyboardShortcuts/KeyboardShortcuts.html#//apple_ref/doc/uid/TP40002725-CHDIGFBH" target="_blank">Keyboard Shortcuts</a></li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/keyboards-and-keyboard-shortcuts/'>Keyboards and Keyboard Shortcuts</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/xcodemacipadiphoneioscocoa/'>xCode/Mac/iPad/iPhone/iOS/cocoa</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6943/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6943/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6943/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6943&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/06/when-writing-applications-include-keyboard-shortcuts-for-both-the-cua-and-windowsapple-shortcuts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>File Extensions of Files Generated by RAD Studio &#8211; RAD Studio XE2</title>
		<link>http://wiert.me/2011/12/01/file-extensions-of-files-generated-by-rad-studio-rad-studio-xe2/</link>
		<comments>http://wiert.me/2011/12/01/file-extensions-of-files-generated-by-rad-studio-rad-studio-xe2/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 05:00:13 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6909</guid>
		<description><![CDATA[With Delphi 1, it was easy to choose what to put in your version control systems: basically .pas, .dfm, .dpr, .inc, .res, .cfg and you were set. Now there are many more extensions involved, so it is harder to choose what to put in your version control system and what not. The File Extensions of Files [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6909&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>With Delphi 1, it was easy to choose what to put in your version control systems: basically .pas, .dfm, .dpr, .inc, .res, .cfg and you were set.</p>
<p>Now there are many more extensions involved, so it is harder to choose what to put in your version control system and what not.</p>
<p>The <a href="http://docwiki.embarcadero.com/RADStudio/en/File_Extensions_of_Files_Generated_by_RAD_Studio">File Extensions of Files Generated by RAD Studio</a> page helps you with that: it lists most of the Delphi file extensions (.local is a noticeable exception) that are used today.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://docwiki.embarcadero.com/RADStudio/en/File_Extensions_of_Files_Generated_by_RAD_Studio">File Extensions of Files Generated by RAD Studio &#8211; RAD Studio XE2</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6909/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6909/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6909/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6909&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/12/01/file-extensions-of-files-generated-by-rad-studio-rad-studio-xe2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Matrix library by Michael Rabatscher with many features and x86/x64 optimizations</title>
		<link>http://wiert.me/2011/11/24/matrix-library-by-michael-rabatscher/</link>
		<comments>http://wiert.me/2011/11/24/matrix-library-by-michael-rabatscher/#comments</comments>
		<pubDate>Thu, 24 Nov 2011 05:00:45 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6879</guid>
		<description><![CDATA[This one is on my Delphi research list for sure: a matrix library including some advanced operations like singular value or LU decomposition, pseudo inversion and others as well as a large set of assembler hand optimized matrix primitive functions. The assembler version are available for x64 code as well by the way. Quite a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6879&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This one is on my Delphi research list for sure:</p>
<blockquote><p>a matrix library including some advanced operations like singular value or LU decomposition, pseudo inversion and others as well as a large set of assembler hand optimized matrix primitive functions. The assembler version are available for x64 code as well by the way. Quite a few of these matrix primitives are also available as multi threaded versions.  All functions are encapsulated in an easy to handle matrix class or interface.The library is released under the apache licence meaning that it may also be integrated into commercial products.</p></blockquote>
<p>So it has lots of features, and optimizations. When browsing the source code, there are also some tests, I presume there will be more in the future.</p>
<p>The library has both a <a href="http://www.mrsoft.org/home/index.html" target="_blank">web site</a> with <a href="http://www.mrsoft.org/home/downloads.html" target="_blank">download</a> and a <a href="http://code.google.com/p/mrmath" target="_blank">Google Code respository</a> with <a href="http://code.google.com/p/mrmath/source/list" target="_blank">source browsing</a>.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.mrsoft.org/home/index.html" target="_blank">Matrix Library by Michael Rabatscher</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6879/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6879&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/24/matrix-library-by-michael-rabatscher/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Jamie&#8217;s Blog &#124; MQTT Client Library for Delphi</title>
		<link>http://wiert.me/2011/11/23/jamies-blog-mqtt-client-library-for-delphi/</link>
		<comments>http://wiert.me/2011/11/23/jamies-blog-mqtt-client-library-for-delphi/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 05:00:43 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[MQ Message Queueing/Queuing]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[WebSphere MQ]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6866</guid>
		<description><![CDATA[Another way to talk to WebSphere MQ from Delphi is to use the MQTT Client Library for Delphi. It encapsulates the MQTT protocol, which &#8211; being a telemetry transport protocol &#8211; is extremely light weight, but also versatile. &#8211;jeroen Via: Jamie&#8217;s Blog &#124; MQTT Client Library for Delphi. Filed under: Delphi, Development, MQ Message Queueing/Queuing, Software [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6866&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Another way to talk to WebSphere MQ from Delphi is to use the <a href="http://jamiei.com/blog/code/mqtt-client-library-for-delphi/" target="_blank">MQTT Client Library for Delphi</a>.</p>
<p>It encapsulates the <a href="http://mqtt.org/" target="_blank">MQTT</a> protocol, which &#8211; being a telemetry transport protocol &#8211; is extremely light weight, but also versatile.</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://jamiei.com/blog/code/mqtt-client-library-for-delphi/" target="_blank">Jamie&#8217;s Blog | MQTT Client Library for Delphi</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/mq-message-queueingqueuing/'>MQ Message Queueing/Queuing</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/mq-message-queueingqueuing/websphere-mq/'>WebSphere MQ</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6866/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6866/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6866/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6866&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/23/jamies-blog-mqtt-client-library-for-delphi/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>In Delphi SHR is a SHR; in C &gt;&gt; is a SAR or SHR (via: Shift Right: Delphi vs C &#124; Galfars Lair)</title>
		<link>http://wiert.me/2011/11/22/in-delphi-shr-is-a-shr-in-c-is-a-sar-or-shr-via-shift-right-delphi-vs-c-galfars-lair/</link>
		<comments>http://wiert.me/2011/11/22/in-delphi-shr-is-a-shr-in-c-is-a-sar-or-shr-via-shift-right-delphi-vs-c-galfars-lair/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 05:00:12 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6870</guid>
		<description><![CDATA[I never knew that &#62;&#62; in C was a SAR/SHR depending if the underlying integer type was signed/unsigned. In Delphi the SHR is always a SHR operation: it never takes into account the sign. SAR is the artithmetic shift right. SHR is the binary/logical shift right. &#8211;jeroen via: Shift Right: Delphi vs C &#124; Galfars Lair. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6870&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I never knew that &gt;&gt; in C was a SAR/SHR depending if the underlying integer type was signed/unsigned.</p>
<p>In Delphi the SHR is always a SHR operation: it never takes into account the sign.</p>
<ul>
<li>SAR is the <a href="http://en.wikipedia.org/wiki/Arithmetic_shift" target="_blank">artithmetic shift</a> right.</li>
<li>SHR is the <a href="http://en.wikipedia.org/wiki/Logical_shift" target="_blank">binary/logical shift</a> right.</li>
</ul>
<p>&#8211;jeroen</p>
<p>via: <a href="http://galfar.vevb.net/wp/2009/shift-right-delphi-vs-c/">Shift Right: Delphi vs C | Galfars Lair</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6870/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6870/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6870/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6870&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/22/in-delphi-shr-is-a-shr-in-c-is-a-sar-or-shr-via-shift-right-delphi-vs-c-galfars-lair/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 Unit Scope tables</title>
		<link>http://wiert.me/2011/11/17/delphi-xe2-unit-scope-tables/</link>
		<comments>http://wiert.me/2011/11/17/delphi-xe2-unit-scope-tables/#comments</comments>
		<pubDate>Thu, 17 Nov 2011 05:00:26 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6841</guid>
		<description><![CDATA[Delphi XE2 introduces Unit Scopes. Below is a batch file that generates a CSV file with scopes and units. The file does not only contain the VCL, RTL and FMX units, but all units in the C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\source\ directory tree. From the CSV, I generated two tables at the end: one with only [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6841&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Delphi XE2 introduces <a href="http://docwiki.embarcadero.com/RADStudio/en/Unit_Scope_Names#Unit_Scopes_and_the_Units_in_Each_Unit_Scope" target="_blank">Unit Scopes</a>.</p>
<p>Below is a batch file that generates a CSV file with scopes and units. The file does not only contain the VCL, RTL and FMX units, but all units in the <code>C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\source\</code> directory tree.</p>
<p>From the CSV, I generated two tables at the end: one with only the scope prefixes, one with all the units and the scopes they belong to.</p>
<p>The tables are based on Delphi XE2 Update 1.</p>
<p>I hope the batch file survives the WordPress syntax highlighter.</p>
<p><pre class="brush: plain;">
@echo off
  echo ScopePrefix
  call :outer 0
  echo ScopePrefix;UnitName;FileName;ParentDirectory
  call :outer 1
goto :end

:outer
:: recursively walk the directory for .pas file having a unit scope
:: http://osix.net/modules/article/?id=755
for /F &quot;tokens=*&quot; %%f in ('dir /s /b &quot;C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\source\*.pas&quot;') do call :inner %1%%f
goto :end

:inner
setlocal
::http://stackoverflow.com/questions/636381/what-is-the-best-way-to-do-a-substring-in-a-batch-file
  set Parameter=%*
  :: strip the first character: copy from 1 till the end
  set FullFileName=%Parameter:~1%
  set Mode=%Parameter:~0,1%
  shift
::  ~dp does not work for regular environment variables
::  ~dp only works for batch file parameters and loop indexes
  for %%d in (&quot;%FullFileName%&quot;) do set ParentDirectory=%%~dpd
  for %%f in (&quot;%FullFileName%&quot;) do set FileName=%%~nf
  for %%f in (&quot;%FileName%&quot;) do set ScopePrefix=%%~nf
  for %%f in (&quot;%FileName%&quot;) do set UnitName=%%~xf
  :: strip the first character: copy from 1 till the end
  if !%UnitName%!==!! goto :noscope
  goto :scope
:noscope
  set UnitName=%ScopePrefix%
  set ScopePrefix=
  goto :display
:scope
  set UnitName=%UnitName:~1%
:display
  if !%Mode%!==!0! if not !%ScopePrefix%!==!! echo %ScopePrefix%
  if !%Mode%!==!1! echo %ScopePrefix%;%UnitName%;%FileName%.pas;%ParentDirectory%
endlocal
  goto :end

:end
</pre></p>
<p>&#8211;jeroen</p>
<p>Table: Scope prefixes</p>
<table>
<tbody>
<tr>
<td><strong>ScopePrefix</strong></td>
</tr>
<tr>
<td>Data</td>
</tr>
<tr>
<td>Data.Win</td>
</tr>
<tr>
<td>Bde</td>
</tr>
<tr>
<td>Data.Cloud</td>
</tr>
<tr>
<td>Datasnap</td>
</tr>
<tr>
<td>Datasnap.Win</td>
</tr>
<tr>
<td>Vcl</td>
</tr>
<tr>
<td>Data.Bind</td>
</tr>
<tr>
<td>Fmx.Bind</td>
</tr>
<tr>
<td>Vcl.Bind</td>
</tr>
<tr>
<td>System.Bindings</td>
</tr>
<tr>
<td>FMX</td>
</tr>
<tr>
<td>FMX.ASE</td>
</tr>
<tr>
<td>FMX.Canvas</td>
</tr>
<tr>
<td>FMX.Context</td>
</tr>
<tr>
<td>FMX.DAE</td>
</tr>
<tr>
<td>FMX.Filter</td>
</tr>
<tr>
<td>FMX.OBJ</td>
</tr>
<tr>
<td>FMX.Platform</td>
</tr>
<tr>
<td>FMX.Printer</td>
</tr>
<tr>
<td>FMX.Video</td>
</tr>
<tr>
<td>Web</td>
</tr>
<tr>
<td>Web.Win</td>
</tr>
<tr>
<td>System</td>
</tr>
<tr>
<td>System.Generics</td>
</tr>
<tr>
<td>System.Win</td>
</tr>
<tr>
<td>Macapi</td>
</tr>
<tr>
<td>System.Mac</td>
</tr>
<tr>
<td>Posix</td>
</tr>
<tr>
<td>System.Internal</td>
</tr>
<tr>
<td>Winapi</td>
</tr>
<tr>
<td>Soap</td>
</tr>
<tr>
<td>Soap.Win</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
</tr>
<tr>
<td>Vcl.Samples</td>
</tr>
<tr>
<td>Vcl.Shell</td>
</tr>
<tr>
<td>Vcl.Touch</td>
</tr>
<tr>
<td>Xml</td>
</tr>
<tr>
<td>Xml.Internal</td>
</tr>
<tr>
<td>Xml.Win</td>
</tr>
</tbody>
</table>
<p>Table: Units and their Scope prefixes</p>
<table>
<tbody>
<tr>
<td><strong>ScopePrefix</strong></td>
<td><strong>UnitName</strong></td>
<td><strong>FileName</strong></td>
<td><strong>ParentDirectory</strong></td>
</tr>
<tr>
<td>Data</td>
<td>DB</td>
<td>Data.DB.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>DBByteBuffer</td>
<td>Data.DBByteBuffer.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>DBCommon</td>
<td>Data.DBCommon.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>DBCommonTypes</td>
<td>Data.DBCommonTypes.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>DBConsts</td>
<td>Data.DBConsts.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>DBPlatform</td>
<td>Data.DBPlatform.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>FMTBcd</td>
<td>Data.FMTBcd.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data</td>
<td>SqlTimSt</td>
<td>Data.SqlTimSt.pas</td>
<td>&#8230;\data\</td>
</tr>
<tr>
<td>Data.Win</td>
<td>ADOConEd</td>
<td>Data.Win.ADOConEd.pas</td>
<td>&#8230;\data\ado\</td>
</tr>
<tr>
<td>Data.Win</td>
<td>ADOConst</td>
<td>Data.Win.ADOConst.pas</td>
<td>&#8230;\data\ado\</td>
</tr>
<tr>
<td>Data.Win</td>
<td>ADODB</td>
<td>Data.Win.ADODB.pas</td>
<td>&#8230;\data\ado\</td>
</tr>
<tr>
<td>Bde</td>
<td>Bdeconst</td>
<td>Bde.Bdeconst.pas</td>
<td>&#8230;\data\bde\</td>
</tr>
<tr>
<td>Bde</td>
<td>DBTables</td>
<td>Bde.DBTables.pas</td>
<td>&#8230;\data\bde\</td>
</tr>
<tr>
<td>Bde</td>
<td>DrTable</td>
<td>Bde.DrTable.pas</td>
<td>&#8230;\data\bde\</td>
</tr>
<tr>
<td></td>
<td>BDE</td>
<td>BDE.pas</td>
<td>&#8230;\data\bde\</td>
</tr>
<tr>
<td>Bde</td>
<td>SMINTF</td>
<td>Bde.SMINTF.pas</td>
<td>&#8230;\data\bde\</td>
</tr>
<tr>
<td></td>
<td>AzureUI</td>
<td>AzureUI.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td>Data.Cloud</td>
<td>AmazonAPI</td>
<td>Data.Cloud.AmazonAPI.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td>Data.Cloud</td>
<td>AzureAPI</td>
<td>Data.Cloud.AzureAPI.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td>Data.Cloud</td>
<td>CloudAPI</td>
<td>Data.Cloud.CloudAPI.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgACL</td>
<td>DSAzDlgACL.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgBlock</td>
<td>DSAzDlgBlock.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgBlockBlob</td>
<td>DSAzDlgBlockBlob.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgBlockProps</td>
<td>DSAzDlgBlockProps.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgCopyBlob</td>
<td>DSAzDlgCopyBlob.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgCreateContainer</td>
<td>DSAzDlgCreateContainer.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgMetadata</td>
<td>DSAzDlgMetadata.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgPage</td>
<td>DSAzDlgPage.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgPageBlob</td>
<td>DSAzDlgPageBlob.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgPageProps</td>
<td>DSAzDlgPageProps.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgPutBlockList</td>
<td>DSAzDlgPutBlockList.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzDlgSnapshotBlob</td>
<td>DSAzDlgSnapshotBlob.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzure</td>
<td>DSAzure.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureBlob</td>
<td>DSAzureBlob.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureMessageDialog</td>
<td>DSAzureMessageDialog.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureQueue</td>
<td>DSAzureQueue.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureQueueMetadataDialog</td>
<td>DSAzureQueueMetadataDialog.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureTable</td>
<td>DSAzureTable.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureTableDialog</td>
<td>DSAzureTableDialog.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td></td>
<td>DSAzureTableRowDialog</td>
<td>DSAzureTableRowDialog.pas</td>
<td>&#8230;\data\cloud\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxDatasnap</td>
<td>Data.DbxDatasnap.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMemoryRow</td>
<td>Data.DBXMemoryRow.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMessageHandlerJSonServer</td>
<td>Data.DBXMessageHandlerJSonServer.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMessageHandlerServer</td>
<td>Data.DBXMessageHandlerServer.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSAuth</td>
<td>Datasnap.DSAuth.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSClientMetadata</td>
<td>Datasnap.DSClientMetadata.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSClientResStrs</td>
<td>Datasnap.DSClientResStrs.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSClientRest</td>
<td>Datasnap.DSClientRest.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSCommonProxy</td>
<td>Datasnap.DSCommonProxy.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSCommonServer</td>
<td>Datasnap.DSCommonServer.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSCommonTable</td>
<td>Datasnap.DSCommonTable.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSConnect</td>
<td>Datasnap.DSConnect.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSHTTP</td>
<td>Datasnap.DSHTTP.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSHTTPCommon</td>
<td>Datasnap.DSHTTPCommon.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSHTTPLayer</td>
<td>Datasnap.DSHTTPLayer.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSHTTPWebBroker</td>
<td>Datasnap.DSHTTPWebBroker.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSLoginDlg</td>
<td>Datasnap.DSLoginDlg.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSNames</td>
<td>Datasnap.DSNames.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSPlatform</td>
<td>Datasnap.DSPlatform.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxy</td>
<td>Datasnap.DSProxy.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyCpp</td>
<td>Datasnap.DSProxyCpp.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyCppRest</td>
<td>Datasnap.DSProxyCppRest.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyDelphi</td>
<td>Datasnap.DSProxyDelphi.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyDelphiRest</td>
<td>Datasnap.DSProxyDelphiRest.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyJavaScript</td>
<td>Datasnap.DSProxyJavaScript.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyRest</td>
<td>Datasnap.DSProxyRest.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyWriter</td>
<td>Datasnap.DSProxyWriter.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSReflect</td>
<td>Datasnap.DSReflect.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSServer</td>
<td>Datasnap.DSServer.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSServerResStrs</td>
<td>Datasnap.DSServerResStrs.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSService</td>
<td>Datasnap.DSService.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSTCPServerTransport</td>
<td>Datasnap.DSTCPServerTransport.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSTransport</td>
<td>Datasnap.DSTransport.pas</td>
<td>&#8230;\data\datasnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSCustomConnectorProxyWriter</td>
<td>Datasnap.DSCustomConnectorProxyWriter.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSHTTPServiceProxyDispatcher</td>
<td>Datasnap.DSHTTPServiceProxyDispatcher.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyCsharpSilverlight</td>
<td>Datasnap.DSProxyCsharpSilverlight.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyDispatcher</td>
<td>Datasnap.DSProxyDispatcher.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyJavaAndroid</td>
<td>Datasnap.DSProxyJavaAndroid.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyJavaBlackBerry</td>
<td>Datasnap.DSProxyJavaBlackBerry.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyObjectiveCiOS</td>
<td>Datasnap.DSProxyObjectiveCiOS.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyUtils</td>
<td>Datasnap.DSProxyUtils.pas</td>
<td>&#8230;\data\datasnap\connectors\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSProxyWriterRegistry</td>
<td>Datasnap.DSProxyWriterRegistry.pas</td>
<td>&#8230;\data\datasnap\proxygen\</td>
</tr>
<tr>
<td>Data</td>
<td>DBConnAdmin</td>
<td>Data.DBConnAdmin.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXClassRegistry</td>
<td>Data.DBXClassRegistry.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXClient</td>
<td>Data.DBXClient.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXClientResStrs</td>
<td>Data.DBXClientResStrs.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXCommon</td>
<td>Data.DBXCommon.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXCommonIndy</td>
<td>Data.DBXCommonIndy.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXCommonResStrs</td>
<td>Data.DBXCommonResStrs.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXCommonTable</td>
<td>Data.DBXCommonTable.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxCompressionFilter</td>
<td>Data.DbxCompressionFilter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDataExpressMetaDataProvider</td>
<td>Data.DBXDataExpressMetaDataProvider.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxDb2</td>
<td>Data.DbxDb2.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDb2MetaData</td>
<td>Data.DBXDb2MetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDb2MetaDataReader</td>
<td>Data.DBXDb2MetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDb2MetaDataWriter</td>
<td>Data.DBXDb2MetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDb2ReadOnlyMetaData</td>
<td>Data.DBXDb2ReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDBReaders</td>
<td>Data.DBXDBReaders.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDelegate</td>
<td>Data.DBXDelegate.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDynalink</td>
<td>Data.DBXDynalink.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXDynalinkNative</td>
<td>Data.DBXDynalinkNative.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXEncryption</td>
<td>Data.DBXEncryption.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxFirebird</td>
<td>Data.DbxFirebird.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXFirebirdMetaData</td>
<td>Data.DBXFirebirdMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXFirebirdMetaDataReader</td>
<td>Data.DBXFirebirdMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXFirebirdMetaDataWriter</td>
<td>Data.DBXFirebirdMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXFirebirdReadOnlyMetaData</td>
<td>Data.DBXFirebirdReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxInformix</td>
<td>Data.DbxInformix.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInformixMetaData</td>
<td>Data.DBXInformixMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInformixMetaDataReader</td>
<td>Data.DBXInformixMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInformixMetaDataWriter</td>
<td>Data.DBXInformixMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInformixReadOnlyMetaData</td>
<td>Data.DBXInformixReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInterbase</td>
<td>Data.DBXInterbase.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInterbaseMetaData</td>
<td>Data.DBXInterbaseMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInterbaseMetaDataReader</td>
<td>Data.DBXInterbaseMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInterbaseMetaDataWriter</td>
<td>Data.DBXInterbaseMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXInterbaseReadOnlyMetaData</td>
<td>Data.DBXInterbaseReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXJSON</td>
<td>Data.DBXJSON.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXJSONCommon</td>
<td>Data.DBXJSONCommon.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXJSONReflect</td>
<td>Data.DBXJSONReflect.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMessageHandlerCommon</td>
<td>Data.DBXMessageHandlerCommon.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMessageHandlerJSonClient</td>
<td>Data.DBXMessageHandlerJSonClient.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMessageHandlerJSonCommon</td>
<td>Data.DBXMessageHandlerJSonCommon.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataCommand</td>
<td>Data.DBXMetaDataCommand.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataCommandFactory</td>
<td>Data.DBXMetaDataCommandFactory.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetadataCommon</td>
<td>Data.DBXMetadataCommon.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataError</td>
<td>Data.DBXMetaDataError.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataNames</td>
<td>Data.DBXMetaDataNames.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataProvider</td>
<td>Data.DBXMetaDataProvider.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataReader</td>
<td>Data.DBXMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataUtil</td>
<td>Data.DBXMetaDataUtil.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataWriter</td>
<td>Data.DBXMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMetaDataWriterFactory</td>
<td>Data.DBXMetaDataWriterFactory.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxMSSQL</td>
<td>Data.DbxMSSQL.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMSSQLMetaData</td>
<td>Data.DBXMSSQLMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMSSQLMetaDataReader</td>
<td>Data.DBXMSSQLMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMSSQLMetaDataWriter</td>
<td>Data.DBXMSSQLMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMSSQLReadOnlyMetaData</td>
<td>Data.DBXMSSQLReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxMySql</td>
<td>Data.DbxMySql.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMySqlMetaData</td>
<td>Data.DBXMySqlMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMySqlMetaDataReader</td>
<td>Data.DBXMySqlMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMySqlMetaDataWriter</td>
<td>Data.DBXMySqlMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXMySqlReadOnlyMetaData</td>
<td>Data.DBXMySqlReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOdbc</td>
<td>Data.DBXOdbc.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOdbcMetaData</td>
<td>Data.DBXOdbcMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOdbcMetaDataReader</td>
<td>Data.DBXOdbcMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOdbcMetaDataWriter</td>
<td>Data.DBXOdbcMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOdbcReadOnlyMetaData</td>
<td>Data.DBXOdbcReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOpenSSL</td>
<td>Data.DBXOpenSSL.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOpenSSLRes</td>
<td>Data.DBXOpenSSLRes.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxOracle</td>
<td>Data.DbxOracle.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOracleMetaData</td>
<td>Data.DBXOracleMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOracleMetaDataReader</td>
<td>Data.DBXOracleMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOracleMetaDataWriter</td>
<td>Data.DBXOracleMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXOracleReadOnlyMetaData</td>
<td>Data.DBXOracleReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXPlatform</td>
<td>Data.DBXPlatform.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXPool</td>
<td>Data.DBXPool.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXReaderTableStorage</td>
<td>Data.DBXReaderTableStorage.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXRSAFilter</td>
<td>Data.DBXRSAFilter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxSocketChannelNative</td>
<td>Data.DbxSocketChannelNative.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSqlScanner</td>
<td>Data.DBXSqlScanner.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXStream</td>
<td>Data.DBXStream.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXStreamer</td>
<td>Data.DBXStreamer.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXStreamPlatform</td>
<td>Data.DBXStreamPlatform.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxSybaseASA</td>
<td>Data.DbxSybaseASA.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASAMetaData</td>
<td>Data.DBXSybaseASAMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASAMetaDataReader</td>
<td>Data.DBXSybaseASAMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASAMetaDataWriter</td>
<td>Data.DBXSybaseASAMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASAReadOnlyMetaData</td>
<td>Data.DBXSybaseASAReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DbxSybaseASE</td>
<td>Data.DbxSybaseASE.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASEMetaData</td>
<td>Data.DBXSybaseASEMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASEMetaDataReader</td>
<td>Data.DBXSybaseASEMetaDataReader.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASEMetaDataWriter</td>
<td>Data.DBXSybaseASEMetaDataWriter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXSybaseASEReadOnlyMetaData</td>
<td>Data.DBXSybaseASEReadOnlyMetaData.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXTableFactory</td>
<td>Data.DBXTableFactory.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXTrace</td>
<td>Data.DBXTrace.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXTransport</td>
<td>Data.DBXTransport.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXTransportFilter</td>
<td>Data.DBXTransportFilter.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DBXTypedTableStorage</td>
<td>Data.DBXTypedTableStorage.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>DSUtil</td>
<td>Data.DSUtil.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>SqlConst</td>
<td>Data.SqlConst.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Data</td>
<td>SqlExpr</td>
<td>Data.SqlExpr.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td></td>
<td>SimpleDS</td>
<td>SimpleDS.pas</td>
<td>&#8230;\data\dbx\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DataBkr</td>
<td>Datasnap.DataBkr.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DBClient</td>
<td>Datasnap.DBClient.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>DSIntf</td>
<td>Datasnap.DSIntf.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>Midas</td>
<td>Datasnap.Midas.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>MidConst</td>
<td>Datasnap.MidConst.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap</td>
<td>Provider</td>
<td>Datasnap.Provider.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>MConnect</td>
<td>Datasnap.Win.MConnect.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>MidasCon</td>
<td>Datasnap.Win.MidasCon.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>MtsRdm</td>
<td>Datasnap.Win.MtsRdm.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>ObjBrkr</td>
<td>Datasnap.Win.ObjBrkr.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>SConnect</td>
<td>Datasnap.Win.SConnect.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td>Datasnap.Win</td>
<td>TConnect</td>
<td>Datasnap.Win.TConnect.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td></td>
<td>HTTPIntr</td>
<td>HTTPIntr.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td></td>
<td>MidasLib</td>
<td>MidasLib.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td></td>
<td>ScktCnst</td>
<td>ScktCnst.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td></td>
<td>ScktMain</td>
<td>ScktMain.pas</td>
<td>&#8230;\data\dsnap\</td>
</tr>
<tr>
<td></td>
<td>DBXCustomDataGenerator</td>
<td>DBXCustomDataGenerator.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td></td>
<td>DbxDataGenerator</td>
<td>DbxDataGenerator.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td></td>
<td>DBXDBMetaData</td>
<td>DBXDBMetaData.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td></td>
<td>DbxTest</td>
<td>DbxTest.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td></td>
<td>DBXTestResStrs</td>
<td>DBXTestResStrs.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td></td>
<td>TestFrameworkExtension</td>
<td>TestFrameworkExtension.pas</td>
<td>&#8230;\data\Test\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBActns</td>
<td>Vcl.DBActns.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBCGrids</td>
<td>Vcl.DBCGrids.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBClientActns</td>
<td>Vcl.DBClientActns.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBCtrls</td>
<td>Vcl.DBCtrls.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBGrids</td>
<td>Vcl.DBGrids.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBLogDlg</td>
<td>Vcl.DBLogDlg.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBLookup</td>
<td>Vcl.DBLookup.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBOleCtl</td>
<td>Vcl.DBOleCtl.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DBPWDlg</td>
<td>Vcl.DBPWDlg.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>recerror</td>
<td>Vcl.recerror.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Vcl</td>
<td>VDBConsts</td>
<td>Vcl.VDBConsts.pas</td>
<td>&#8230;\data\vclctrls\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>Components</td>
<td>Data.Bind.Components.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>Consts</td>
<td>Data.Bind.Consts.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>DBLinks</td>
<td>Data.Bind.DBLinks.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>DBScope</td>
<td>Data.Bind.DBScope.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>Editors</td>
<td>Data.Bind.Editors.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>EngExt</td>
<td>Data.Bind.EngExt.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Data.Bind</td>
<td>ObserverLinks</td>
<td>Data.Bind.ObserverLinks.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Fmx.Bind</td>
<td>Consts</td>
<td>Fmx.Bind.Consts.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Fmx.Bind</td>
<td>DBEngExt</td>
<td>Fmx.Bind.DBEngExt.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Fmx.Bind</td>
<td>DBLinks</td>
<td>Fmx.Bind.DBLinks.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Fmx.Bind</td>
<td>Editors</td>
<td>Fmx.Bind.Editors.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Fmx.Bind</td>
<td>Navigator</td>
<td>Fmx.Bind.Navigator.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Vcl.Bind</td>
<td>Consts</td>
<td>Vcl.Bind.Consts.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Vcl.Bind</td>
<td>DBEngExt</td>
<td>Vcl.Bind.DBEngExt.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>Vcl.Bind</td>
<td>Editors</td>
<td>Vcl.Bind.Editors.pas</td>
<td>&#8230;\databinding\components\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Consts</td>
<td>System.Bindings.Consts.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>CustomScope</td>
<td>System.Bindings.CustomScope.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>CustomWrapper</td>
<td>System.Bindings.CustomWrapper.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>EvalProtocol</td>
<td>System.Bindings.EvalProtocol.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>EvalSys</td>
<td>System.Bindings.EvalSys.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Evaluator</td>
<td>System.Bindings.Evaluator.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Expression</td>
<td>System.Bindings.Expression.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>ExpressionDefaults</td>
<td>System.Bindings.ExpressionDefaults.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Factories</td>
<td>System.Bindings.Factories.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Graph</td>
<td>System.Bindings.Graph.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Helper</td>
<td>System.Bindings.Helper.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Manager</td>
<td>System.Bindings.Manager.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>ManagerDefaults</td>
<td>System.Bindings.ManagerDefaults.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Methods</td>
<td>System.Bindings.Methods.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>NotifierContracts</td>
<td>System.Bindings.NotifierContracts.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>NotifierDefaults</td>
<td>System.Bindings.NotifierDefaults.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>ObjEval</td>
<td>System.Bindings.ObjEval.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Outputs</td>
<td>System.Bindings.Outputs.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td>System.Bindings</td>
<td>Search</td>
<td>System.Bindings.Search.pas</td>
<td>&#8230;\databinding\engine\</td>
</tr>
<tr>
<td></td>
<td>BindingGraphResStrs</td>
<td>BindingGraphResStrs.pas</td>
<td>&#8230;\databinding\graph\</td>
</tr>
<tr>
<td></td>
<td>BindingGraphViewNodes</td>
<td>BindingGraphViewNodes.pas</td>
<td>&#8230;\databinding\graph\</td>
</tr>
<tr>
<td></td>
<td>GraphView</td>
<td>GraphView.pas</td>
<td>&#8230;\databinding\graph\</td>
</tr>
<tr>
<td></td>
<td>SyncController</td>
<td>SyncController.pas</td>
<td>&#8230;\databinding\graph\</td>
</tr>
<tr>
<td></td>
<td>XPEvent</td>
<td>XPEvent.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPInterfacedObject</td>
<td>XPInterfacedObject.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPIterator</td>
<td>XPIterator.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPObserver</td>
<td>XPObserver.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPRestore</td>
<td>XPRestore.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPSingleton</td>
<td>XPSingleton.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPSingletonForm</td>
<td>XPSingletonForm.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPStrings</td>
<td>XPStrings.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPSyncRW</td>
<td>XPSyncRW.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPTransactIniFile</td>
<td>XPTransactIniFile.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPWinBase</td>
<td>XPWinBase.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPWinSync</td>
<td>XPWinSync.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\</td>
</tr>
<tr>
<td></td>
<td>XPInterfacedObjectTests</td>
<td>XPInterfacedObjectTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPObserverTests</td>
<td>XPObserverTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPTempReleaseTests</td>
<td>XPTempReleaseTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\Common\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPKeyWords</td>
<td>XPKeyWords.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XPPascalScanner</td>
<td>XPPascalScanner.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XPToken</td>
<td>XPToken.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XPTokenMulticaster</td>
<td>XPTokenMulticaster.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XP_OTACreators</td>
<td>XP_OTACreators.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XP_OTAEditorUtils</td>
<td>XP_OTAEditorUtils.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XP_OTAUtils</td>
<td>XP_OTAUtils.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XP_OTAWizards</td>
<td>XP_OTAWizards.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitCommon</td>
<td>XPDUnitCommon.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitMacros</td>
<td>XPDUnitMacros.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitMenuWizard</td>
<td>XPDUnitMenuWizard.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitParameters</td>
<td>XPDUnitParameters.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitProject</td>
<td>XPDUnitProject.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitProjectWizard</td>
<td>XPDUnitProjectWizard.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitSetup</td>
<td>XPDUnitSetup.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitTestClass</td>
<td>XPDUnitTestClass.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitTestClassWizard</td>
<td>XPDUnitTestClassWizard.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitTestModule</td>
<td>XPDUnitTestModule.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitTestModuleWizard</td>
<td>XPDUnitTestModuleWizard.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitWizard</td>
<td>XPDUnitWizard.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPParserFilters</td>
<td>XPParserFilters.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPTemplateParser</td>
<td>XPTemplateParser.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPTestedUnitParser</td>
<td>XPTestedUnitParser.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPTestedUnitUtils</td>
<td>XPTestedUnitUtils.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>XPTextTemplates</td>
<td>XPTextTemplates.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\</td>
</tr>
<tr>
<td></td>
<td>TestedUnitStream</td>
<td>TestedUnitStream.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>WizardFormsDemoMain</td>
<td>WizardFormsDemoMain.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitMacrosTests</td>
<td>XPDUnitMacrosTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPDUnitParametersTests</td>
<td>XPDUnitParametersTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPTemplateParserTests</td>
<td>XPTemplateParserTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPTestedUnitParserTests</td>
<td>XPTestedUnitParserTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>XPTestedUnitUtilsTests</td>
<td>XPTestedUnitUtilsTests.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\</td>
</tr>
<tr>
<td></td>
<td>TestedUnitParserTest_1</td>
<td>TestedUnitParserTest_1.pas</td>
<td>&#8230;\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit\Examples\</td>
</tr>
<tr>
<td></td>
<td>XMLTestRunner</td>
<td>XMLTestRunner.pas</td>
<td>&#8230;\DUnit\Contrib\XMLReporting\</td>
</tr>
<tr>
<td></td>
<td>frmXPGenOpts</td>
<td>frmXPGenOpts.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>listsupport</td>
<td>listsupport.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>parsedef</td>
<td>parsedef.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>suite_xpgen</td>
<td>suite_xpgen.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>testunit</td>
<td>testunit.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>test_xpLex</td>
<td>test_xpLex.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>test_xpParse</td>
<td>test_xpParse.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>WIZARDXPGEN</td>
<td>WIZARDXPGEN.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>wizardXpGenOptions</td>
<td>wizardXpGenOptions.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>xpCodeGen</td>
<td>xpCodeGen.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>xpLex</td>
<td>xpLex.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>xpmain</td>
<td>xpmain.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>xpParse</td>
<td>xpParse.pas</td>
<td>&#8230;\DUnit\Contrib\XPGen\</td>
</tr>
<tr>
<td></td>
<td>TestFailChecklessTests</td>
<td>TestFailChecklessTests.pas</td>
<td>&#8230;\DUnit\examples\ChecklessTests\</td>
</tr>
<tr>
<td></td>
<td>Unit1</td>
<td>Unit1.pas</td>
<td>&#8230;\DUnit\examples\cmdline\</td>
</tr>
<tr>
<td></td>
<td>Unit1Test</td>
<td>Unit1Test.pas</td>
<td>&#8230;\DUnit\examples\cmdline\</td>
</tr>
<tr>
<td></td>
<td>Unit2</td>
<td>Unit2.pas</td>
<td>&#8230;\DUnit\examples\cmdline\</td>
</tr>
<tr>
<td></td>
<td>Unit2Test</td>
<td>Unit2Test.pas</td>
<td>&#8230;\DUnit\examples\cmdline\</td>
</tr>
<tr>
<td></td>
<td>EmbeddableGUITestRunner</td>
<td>EmbeddableGUITestRunner.pas</td>
<td>&#8230;\DUnit\examples\embeddable\</td>
</tr>
<tr>
<td></td>
<td>DemoHaltRepeatingOnError</td>
<td>DemoHaltRepeatingOnError.pas</td>
<td>&#8230;\DUnit\examples\HaltRepeating\</td>
</tr>
<tr>
<td></td>
<td>UnitTestLeak</td>
<td>UnitTestLeak.pas</td>
<td>&#8230;\DUnit\examples\MemLeakDetect\</td>
</tr>
<tr>
<td></td>
<td>UnitTestSetup</td>
<td>UnitTestSetup.pas</td>
<td>&#8230;\DUnit\examples\MemLeakDetect\</td>
</tr>
<tr>
<td></td>
<td>TestUnit1</td>
<td>TestUnit1.pas</td>
<td>&#8230;\DUnit\examples\registration\</td>
</tr>
<tr>
<td></td>
<td>TestUnit2</td>
<td>TestUnit2.pas</td>
<td>&#8230;\DUnit\examples\registration\</td>
</tr>
<tr>
<td></td>
<td>TestUnit3</td>
<td>TestUnit3.pas</td>
<td>&#8230;\DUnit\examples\registration\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnit</td>
<td>RegistryUnit.pas</td>
<td>&#8230;\DUnit\examples\registry\Step1\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnitTest</td>
<td>RegistryUnitTest.pas</td>
<td>&#8230;\DUnit\examples\registry\Step1\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnit</td>
<td>RegistryUnit.pas</td>
<td>&#8230;\DUnit\examples\registry\Step2\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnitTest</td>
<td>RegistryUnitTest.pas</td>
<td>&#8230;\DUnit\examples\registry\Step2\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnit</td>
<td>RegistryUnit.pas</td>
<td>&#8230;\DUnit\examples\registry\Step3\</td>
</tr>
<tr>
<td></td>
<td>RegistryUnitTest</td>
<td>RegistryUnitTest.pas</td>
<td>&#8230;\DUnit\examples\registry\Step3\</td>
</tr>
<tr>
<td></td>
<td>Unit1</td>
<td>Unit1.pas</td>
<td>&#8230;\DUnit\examples\structure\diffunit\</td>
</tr>
<tr>
<td></td>
<td>Unit1Test</td>
<td>Unit1Test.pas</td>
<td>&#8230;\DUnit\examples\structure\diffunit\</td>
</tr>
<tr>
<td></td>
<td>Unit2</td>
<td>Unit2.pas</td>
<td>&#8230;\DUnit\examples\structure\diffunit\</td>
</tr>
<tr>
<td></td>
<td>Unit2Test</td>
<td>Unit2Test.pas</td>
<td>&#8230;\DUnit\examples\structure\diffunit\</td>
</tr>
<tr>
<td></td>
<td>Unit1</td>
<td>Unit1.pas</td>
<td>&#8230;\DUnit\examples\structure\sameunit\</td>
</tr>
<tr>
<td></td>
<td>Unit2</td>
<td>Unit2.pas</td>
<td>&#8230;\DUnit\examples\structure\sameunit\</td>
</tr>
<tr>
<td></td>
<td>Unit1</td>
<td>Unit1.pas</td>
<td>&#8230;\DUnit\examples\testexception\</td>
</tr>
<tr>
<td></td>
<td>Unit1Test</td>
<td>Unit1Test.pas</td>
<td>&#8230;\DUnit\examples\testexception\</td>
</tr>
<tr>
<td></td>
<td>Unit2</td>
<td>Unit2.pas</td>
<td>&#8230;\DUnit\examples\testexception\</td>
</tr>
<tr>
<td></td>
<td>Unit2Test</td>
<td>Unit2Test.pas</td>
<td>&#8230;\DUnit\examples\testexception\</td>
</tr>
<tr>
<td></td>
<td>TListTestCase</td>
<td>TListTestCase.pas</td>
<td>&#8230;\DUnit\examples\TListTest\</td>
</tr>
<tr>
<td></td>
<td>DunitAbout</td>
<td>DunitAbout.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>DUnitConsts</td>
<td>DUnitConsts.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>DUnitMainForm</td>
<td>DUnitMainForm.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>FastMMMemLeakMonitor</td>
<td>FastMMMemLeakMonitor.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>GUITesting</td>
<td>GUITesting.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>GUITestRunner</td>
<td>GUITestRunner.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>HeidiTestRunner</td>
<td>HeidiTestRunner.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>QGUITestRunner</td>
<td>QGUITestRunner.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>TestExtensions</td>
<td>TestExtensions.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>TestFramework</td>
<td>TestFramework.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>TestModules</td>
<td>TestModules.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>TextTestRunner</td>
<td>TextTestRunner.pas</td>
<td>&#8230;\DUnit\src\</td>
</tr>
<tr>
<td></td>
<td>FastMMMonitorTest</td>
<td>FastMMMonitorTest.pas</td>
<td>&#8230;\DUnit\tests\</td>
</tr>
<tr>
<td></td>
<td>UnitTestExtensions</td>
<td>UnitTestExtensions.pas</td>
<td>&#8230;\DUnit\tests\</td>
</tr>
<tr>
<td></td>
<td>UnitTestFramework</td>
<td>UnitTestFramework.pas</td>
<td>&#8230;\DUnit\tests\</td>
</tr>
<tr>
<td></td>
<td>UnitTestGUITesting</td>
<td>UnitTestGUITesting.pas</td>
<td>&#8230;\DUnit\tests\</td>
</tr>
<tr>
<td></td>
<td>UnitTestGUITestRunner</td>
<td>UnitTestGUITestRunner.pas</td>
<td>&#8230;\DUnit\tests\</td>
</tr>
<tr>
<td></td>
<td>DSCreators</td>
<td>DSCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSMrWizardCommon</td>
<td>DSMrWizardCommon.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSPortFrame</td>
<td>DSPortFrame.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSPortsWizardPage</td>
<td>DSPortsWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSProjectLocationWizardPage</td>
<td>DSProjectLocationWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSRESTExpertsCreators</td>
<td>DSRESTExpertsCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSRESTExpertsUI</td>
<td>DSRESTExpertsUI.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerClassWizardPage</td>
<td>DSServerClassWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerDsnResStrs</td>
<td>DSServerDsnResStrs.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerExpertsCreators</td>
<td>DSServerExpertsCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerExpertsTemplateProperties</td>
<td>DSServerExpertsTemplateProperties.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerExpertsUI</td>
<td>DSServerExpertsUI.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerFeatureManager</td>
<td>DSServerFeatureManager.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerFeatures</td>
<td>DSServerFeatures.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerMethodsExpertsCreators</td>
<td>DSServerMethodsExpertsCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DsServerReg</td>
<td>DsServerReg.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerScriptGen</td>
<td>DSServerScriptGen.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerWebBrokerExpertsCreators</td>
<td>DSServerWebBrokerExpertsCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSServerWebBrokerExpertsUI</td>
<td>DSServerWebBrokerExpertsUI.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSSource</td>
<td>DSSource.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSStandAloneAppWizardPage</td>
<td>DSStandAloneAppWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSStandAloneReg</td>
<td>DSStandAloneReg.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>DSWebBrokerReg</td>
<td>DSWebBrokerReg.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsBaseCreators</td>
<td>ExpertsBaseCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsIntf</td>
<td>ExpertsIntf.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsModuleCreators</td>
<td>ExpertsModuleCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsModules</td>
<td>ExpertsModules.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsProject</td>
<td>ExpertsProject.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsProjectCreators</td>
<td>ExpertsProjectCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsReg</td>
<td>ExpertsReg.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsRepository</td>
<td>ExpertsRepository.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsResStrs</td>
<td>ExpertsResStrs.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsTemplates</td>
<td>ExpertsTemplates.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsUIIniOptions</td>
<td>ExpertsUIIniOptions.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsUIInternalWizard</td>
<td>ExpertsUIInternalWizard.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsUIReg</td>
<td>ExpertsUIReg.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsUIResStrs</td>
<td>ExpertsUIResStrs.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>ExpertsUIWizard</td>
<td>ExpertsUIWizard.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetAppTypeFrame</td>
<td>InetAppTypeFrame.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetCertFilesWizardPage</td>
<td>InetCertFilesWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetDesignResStrs</td>
<td>InetDesignResStrs.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetExpertsCreators</td>
<td>InetExpertsCreators.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetExpertsTemplateProperties</td>
<td>InetExpertsTemplateProperties.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetExpertsUI</td>
<td>InetExpertsUI.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetHTTPPortWizardPage</td>
<td>InetHTTPPortWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>InetWiz</td>
<td>InetWiz.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>WebServerWizardPage</td>
<td>WebServerWizardPage.pas</td>
<td>&#8230;\Experts\</td>
</tr>
<tr>
<td></td>
<td>FMX_Ani</td>
<td>FMX_Ani.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_ASE_Importer</td>
<td>FMX_ASE_Importer.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_ASE_Lexer</td>
<td>FMX_ASE_Lexer.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_ASE_Model</td>
<td>FMX_ASE_Model.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Canvas_D2D</td>
<td>FMX_Canvas_D2D.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Canvas_GDIP</td>
<td>FMX_Canvas_GDIP.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Canvas_iOS</td>
<td>FMX_Canvas_iOS.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Colors</td>
<td>FMX_Colors.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Consts</td>
<td>FMX_Consts.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Context_DX9</td>
<td>FMX_Context_DX9.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Context_GLES</td>
<td>FMX_Context_GLES.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Controls</td>
<td>FMX_Controls.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Dialogs</td>
<td>FMX_Dialogs.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Edit</td>
<td>FMX_Edit.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Effects</td>
<td>FMX_Effects.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_ExtCtrls</td>
<td>FMX_ExtCtrls.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Filter</td>
<td>FMX_Filter.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatBlur</td>
<td>FMX_FilterCatBlur.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatColor</td>
<td>FMX_FilterCatColor.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatColorAdjust</td>
<td>FMX_FilterCatColorAdjust.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatComposite</td>
<td>FMX_FilterCatComposite.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatDistortion</td>
<td>FMX_FilterCatDistortion.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatGenerator</td>
<td>FMX_FilterCatGenerator.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatGeometry</td>
<td>FMX_FilterCatGeometry.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatStyle</td>
<td>FMX_FilterCatStyle.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatTiles</td>
<td>FMX_FilterCatTiles.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_FilterCatTransition</td>
<td>FMX_FilterCatTransition.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Filter_Effects</td>
<td>FMX_Filter_Effects.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Forms</td>
<td>FMX_Forms.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Grid</td>
<td>FMX_Grid.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Import</td>
<td>FMX_Import.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Layers3D</td>
<td>FMX_Layers3D.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Layouts</td>
<td>FMX_Layouts.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_ListBox</td>
<td>FMX_ListBox.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Memo</td>
<td>FMX_Memo.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Menus</td>
<td>FMX_Menus.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Objects</td>
<td>FMX_Objects.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Objects3D</td>
<td>FMX_Objects3D.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_OBJ_Importer</td>
<td>FMX_OBJ_Importer.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_OBJ_Model</td>
<td>FMX_OBJ_Model.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Platform</td>
<td>FMX_Platform.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Platform_iOS</td>
<td>FMX_Platform_iOS.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Platform_Win</td>
<td>FMX_Platform_Win.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Printer</td>
<td>FMX_Printer.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Printer_Win</td>
<td>FMX_Printer_Win.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_TabControl</td>
<td>FMX_TabControl.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_TreeView</td>
<td>FMX_TreeView.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Types</td>
<td>FMX_Types.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Types3D</td>
<td>FMX_Types3D.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Video</td>
<td>FMX_Video.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Video_iOS</td>
<td>FMX_Video_iOS.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td></td>
<td>FMX_Video_Win</td>
<td>FMX_Video_Win.pas</td>
<td>&#8230;\fmi\</td>
</tr>
<tr>
<td>FMX</td>
<td>Ani</td>
<td>FMX.Ani.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.ASE</td>
<td>Importer</td>
<td>FMX.ASE.Importer.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.ASE</td>
<td>Lexer</td>
<td>FMX.ASE.Lexer.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.ASE</td>
<td>Model</td>
<td>FMX.ASE.Model.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Canvas</td>
<td>D2D</td>
<td>FMX.Canvas.D2D.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Canvas</td>
<td>GDIP</td>
<td>FMX.Canvas.GDIP.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Canvas</td>
<td>Mac</td>
<td>FMX.Canvas.Mac.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Colors</td>
<td>FMX.Colors.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Consts</td>
<td>FMX.Consts.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Context</td>
<td>DX9</td>
<td>FMX.Context.DX9.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Context</td>
<td>Mac</td>
<td>FMX.Context.Mac.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Controls</td>
<td>FMX.Controls.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.DAE</td>
<td>Importer</td>
<td>FMX.DAE.Importer.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.DAE</td>
<td>Model</td>
<td>FMX.DAE.Model.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.DAE</td>
<td>Schema</td>
<td>FMX.DAE.Schema.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Dialogs</td>
<td>FMX.Dialogs.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Edit</td>
<td>FMX.Edit.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Effects</td>
<td>FMX.Effects.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>ExtCtrls</td>
<td>FMX.ExtCtrls.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Filter</td>
<td>Effects</td>
<td>FMX.Filter.Effects.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Filter</td>
<td>FMX.Filter.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatBlur</td>
<td>FMX.FilterCatBlur.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatColor</td>
<td>FMX.FilterCatColor.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatColorAdjust</td>
<td>FMX.FilterCatColorAdjust.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatComposite</td>
<td>FMX.FilterCatComposite.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatDistortion</td>
<td>FMX.FilterCatDistortion.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatGenerator</td>
<td>FMX.FilterCatGenerator.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatGeometry</td>
<td>FMX.FilterCatGeometry.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatStyle</td>
<td>FMX.FilterCatStyle.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatTiles</td>
<td>FMX.FilterCatTiles.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>FilterCatTransition</td>
<td>FMX.FilterCatTransition.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Forms</td>
<td>FMX.Forms.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Grid</td>
<td>FMX.Grid.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Import</td>
<td>FMX.Import.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Layers3D</td>
<td>FMX.Layers3D.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Layouts</td>
<td>FMX.Layouts.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>ListBox</td>
<td>FMX.ListBox.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Memo</td>
<td>FMX.Memo.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Menus</td>
<td>FMX.Menus.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.OBJ</td>
<td>Importer</td>
<td>FMX.OBJ.Importer.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.OBJ</td>
<td>Model</td>
<td>FMX.OBJ.Model.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Objects</td>
<td>FMX.Objects.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Objects3D</td>
<td>FMX.Objects3D.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Platform</td>
<td>Mac</td>
<td>FMX.Platform.Mac.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Platform</td>
<td>FMX.Platform.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Platform</td>
<td>Win</td>
<td>FMX.Platform.Win.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Printer</td>
<td>Mac</td>
<td>FMX.Printer.Mac.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Printer</td>
<td>FMX.Printer.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Printer</td>
<td>Win</td>
<td>FMX.Printer.Win.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>TabControl</td>
<td>FMX.TabControl.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>TreeView</td>
<td>FMX.TreeView.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Types</td>
<td>FMX.Types.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Types3D</td>
<td>FMX.Types3D.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Video</td>
<td>Mac</td>
<td>FMX.Video.Mac.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX</td>
<td>Video</td>
<td>FMX.Video.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td>FMX.Video</td>
<td>Win</td>
<td>FMX.Video.Win.pas</td>
<td>&#8230;\fmx\</td>
</tr>
<tr>
<td></td>
<td>IB</td>
<td>IB.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBBlob</td>
<td>IBBlob.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBConnectionBroker</td>
<td>IBConnectionBroker.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBCustomDataSet</td>
<td>IBCustomDataSet.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBDatabase</td>
<td>IBDatabase.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBDatabaseInfo</td>
<td>IBDatabaseInfo.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBDatabaseINI</td>
<td>IBDatabaseINI.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBErrorCodes</td>
<td>IBErrorCodes.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBEvents</td>
<td>IBEvents.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBExternals</td>
<td>IBExternals.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBExtract</td>
<td>IBExtract.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBFilterDialog</td>
<td>IBFilterDialog.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBFilterSummary</td>
<td>IBFilterSummary.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBHeader</td>
<td>IBHeader.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBInstall</td>
<td>IBInstall.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBInstallHeader</td>
<td>IBInstallHeader.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBIntf</td>
<td>IBIntf.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBQuery</td>
<td>IBQuery.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBScript</td>
<td>IBScript.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBServices</td>
<td>IBServices.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBSQL</td>
<td>IBSQL.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBSQLMonitor</td>
<td>IBSQLMonitor.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBStoredProc</td>
<td>IBStoredProc.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBTable</td>
<td>IBTable.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBUpdateSQL</td>
<td>IBUpdateSQL.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBUtils</td>
<td>IBUtils.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBVisualConst</td>
<td>IBVisualConst.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBXConst</td>
<td>IBXConst.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IBXMLHeader</td>
<td>IBXMLHeader.pas</td>
<td>&#8230;\IBX\</td>
</tr>
<tr>
<td></td>
<td>IPPeerAPI</td>
<td>IPPeerAPI.pas</td>
<td>&#8230;\indy\abstraction\</td>
</tr>
<tr>
<td></td>
<td>IPPeerResStrs</td>
<td>IPPeerResStrs.pas</td>
<td>&#8230;\indy\abstraction\</td>
</tr>
<tr>
<td></td>
<td>IndyPeerImpl</td>
<td>IndyPeerImpl.pas</td>
<td>&#8230;\indy\implementation\</td>
</tr>
<tr>
<td></td>
<td>IdAssignedNumbers</td>
<td>IdAssignedNumbers.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdBuffer</td>
<td>IdBuffer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdCmdTCPClient</td>
<td>IdCmdTCPClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdCmdTCPServer</td>
<td>IdCmdTCPServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdCommandHandlers</td>
<td>IdCommandHandlers.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdContext</td>
<td>IdContext.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdCustomTCPServer</td>
<td>IdCustomTCPServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdCustomTransparentProxy</td>
<td>IdCustomTransparentProxy.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdExceptionCore</td>
<td>IdExceptionCore.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdGlobalCore</td>
<td>IdGlobalCore.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIcmpClient</td>
<td>IdIcmpClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIntercept</td>
<td>IdIntercept.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdInterceptSimLog</td>
<td>IdInterceptSimLog.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdInterceptThrottler</td>
<td>IdInterceptThrottler.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIOHandler</td>
<td>IdIOHandler.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIOHandlerSocket</td>
<td>IdIOHandlerSocket.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIOHandlerStack</td>
<td>IdIOHandlerStack.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIOHandlerStream</td>
<td>IdIOHandlerStream.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIPAddress</td>
<td>IdIPAddress.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIPMCastBase</td>
<td>IdIPMCastBase.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIPMCastClient</td>
<td>IdIPMCastClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdIPMCastServer</td>
<td>IdIPMCastServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdLogBase</td>
<td>IdLogBase.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdLogDebug</td>
<td>IdLogDebug.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdLogEvent</td>
<td>IdLogEvent.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdLogFile</td>
<td>IdLogFile.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdLogStream</td>
<td>IdLogStream.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdRawBase</td>
<td>IdRawBase.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdRawClient</td>
<td>IdRawClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdRawFunctions</td>
<td>IdRawFunctions.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdRawHeaders</td>
<td>IdRawHeaders.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdReply</td>
<td>IdReply.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdReplyRFC</td>
<td>IdReplyRFC.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdResourceStringsCore</td>
<td>IdResourceStringsCore.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdScheduler</td>
<td>IdScheduler.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSchedulerOfThread</td>
<td>IdSchedulerOfThread.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSchedulerOfThreadDefault</td>
<td>IdSchedulerOfThreadDefault.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSchedulerOfThreadPool</td>
<td>IdSchedulerOfThreadPool.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdServerIOHandler</td>
<td>IdServerIOHandler.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdServerIOHandlerSocket</td>
<td>IdServerIOHandlerSocket.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdServerIOHandlerStack</td>
<td>IdServerIOHandlerStack.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSimpleServer</td>
<td>IdSimpleServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSocketHandle</td>
<td>IdSocketHandle.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSocks</td>
<td>IdSocks.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdSync</td>
<td>IdSync.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTask</td>
<td>IdTask.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTCPClient</td>
<td>IdTCPClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTCPConnection</td>
<td>IdTCPConnection.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTCPServer</td>
<td>IdTCPServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTCPStream</td>
<td>IdTCPStream.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdThread</td>
<td>IdThread.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdThreadComponent</td>
<td>IdThreadComponent.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdThreadSafe</td>
<td>IdThreadSafe.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdTraceRoute</td>
<td>IdTraceRoute.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdUDPBase</td>
<td>IdUDPBase.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdUDPClient</td>
<td>IdUDPClient.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdUDPServer</td>
<td>IdUDPServer.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdYarn</td>
<td>IdYarn.pas</td>
<td>&#8230;\Indy10\Core\</td>
</tr>
<tr>
<td></td>
<td>IdAllAuthentications</td>
<td>IdAllAuthentications.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAllFTPListParsers</td>
<td>IdAllFTPListParsers.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAllHeaderCoders</td>
<td>IdAllHeaderCoders.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdASN1Util</td>
<td>IdASN1Util.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAttachment</td>
<td>IdAttachment.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAttachmentFile</td>
<td>IdAttachmentFile.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAttachmentMemory</td>
<td>IdAttachmentMemory.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAuthentication</td>
<td>IdAuthentication.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAuthenticationDigest</td>
<td>IdAuthenticationDigest.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAuthenticationManager</td>
<td>IdAuthenticationManager.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAuthenticationNTLM</td>
<td>IdAuthenticationNTLM.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAuthenticationSSPI</td>
<td>IdAuthenticationSSPI.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdBlockCipherIntercept</td>
<td>IdBlockCipherIntercept.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdChargenServer</td>
<td>IdChargenServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdChargenUDPServer</td>
<td>IdChargenUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCharsets</td>
<td>IdCharsets.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoder</td>
<td>IdCoder.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoder00E</td>
<td>IdCoder00E.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoder3to4</td>
<td>IdCoder3to4.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderBinHex4</td>
<td>IdCoderBinHex4.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderHeader</td>
<td>IdCoderHeader.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderMIME</td>
<td>IdCoderMIME.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderQuotedPrintable</td>
<td>IdCoderQuotedPrintable.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderUUE</td>
<td>IdCoderUUE.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCoderXXE</td>
<td>IdCoderXXE.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCompressionIntercept</td>
<td>IdCompressionIntercept.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCompressorZLib</td>
<td>IdCompressorZLib.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdConnectThroughHttpProxy</td>
<td>IdConnectThroughHttpProxy.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdContainers</td>
<td>IdContainers.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCookie</td>
<td>IdCookie.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCookieManager</td>
<td>IdCookieManager.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdCustomHTTPServer</td>
<td>IdCustomHTTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDateTimeStamp</td>
<td>IdDateTimeStamp.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDayTime</td>
<td>IdDayTime.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDayTimeServer</td>
<td>IdDayTimeServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDayTimeUDP</td>
<td>IdDayTimeUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDayTimeUDPServer</td>
<td>IdDayTimeUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDICT</td>
<td>IdDICT.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDICTCommon</td>
<td>IdDICTCommon.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDICTServer</td>
<td>IdDICTServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDiscardServer</td>
<td>IdDiscardServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDiscardUDPServer</td>
<td>IdDiscardUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDNSCommon</td>
<td>IdDNSCommon.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDNSResolver</td>
<td>IdDNSResolver.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdDNSServer</td>
<td>IdDNSServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdEcho</td>
<td>IdEcho.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdEchoServer</td>
<td>IdEchoServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdEchoUDP</td>
<td>IdEchoUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdEchoUDPServer</td>
<td>IdEchoUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdEMailAddress</td>
<td>IdEMailAddress.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdExplicitTLSClientServerBase</td>
<td>IdExplicitTLSClientServerBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFinger</td>
<td>IdFinger.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFingerServer</td>
<td>IdFingerServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFIPS</td>
<td>IdFIPS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFSP</td>
<td>IdFSP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTP</td>
<td>IdFTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPBaseFileSystem</td>
<td>IdFTPBaseFileSystem.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPCommon</td>
<td>IdFTPCommon.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPList</td>
<td>IdFTPList.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListOutput</td>
<td>IdFTPListOutput.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseAS400</td>
<td>IdFTPListParseAS400.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseBase</td>
<td>IdFTPListParseBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseBullGCOS7</td>
<td>IdFTPListParseBullGCOS7.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseBullGCOS8</td>
<td>IdFTPListParseBullGCOS8.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseChameleonNewt</td>
<td>IdFTPListParseChameleonNewt.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseCiscoIOS</td>
<td>IdFTPListParseCiscoIOS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseDistinctTCPIP</td>
<td>IdFTPListParseDistinctTCPIP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseEPLF</td>
<td>IdFTPListParseEPLF.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseHellSoft</td>
<td>IdFTPListParseHellSoft.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseIEFTPGateway</td>
<td>IdFTPListParseIEFTPGateway.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseKA9Q</td>
<td>IdFTPListParseKA9Q.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseMicrowareOS9</td>
<td>IdFTPListParseMicrowareOS9.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseMPEiX</td>
<td>IdFTPListParseMPEiX.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseMusic</td>
<td>IdFTPListParseMusic.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseMVS</td>
<td>IdFTPListParseMVS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseNCSAForDOS</td>
<td>IdFTPListParseNCSAForDOS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseNCSAForMACOS</td>
<td>IdFTPListParseNCSAForMACOS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseNovellNetware</td>
<td>IdFTPListParseNovellNetware.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseNovellNetwarePSU</td>
<td>IdFTPListParseNovellNetwarePSU.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseOS2</td>
<td>IdFTPListParseOS2.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParsePCNFSD</td>
<td>IdFTPListParsePCNFSD.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParsePCTCP</td>
<td>IdFTPListParsePCTCP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseStercomOS390Exp</td>
<td>IdFTPListParseStercomOS390Exp.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseStercomUnixEnt</td>
<td>IdFTPListParseStercomUnixEnt.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseStratusVOS</td>
<td>IdFTPListParseStratusVOS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseSuperTCP</td>
<td>IdFTPListParseSuperTCP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseTandemGuardian</td>
<td>IdFTPListParseTandemGuardian.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseTOPS20</td>
<td>IdFTPListParseTOPS20.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseTSXPlus</td>
<td>IdFTPListParseTSXPlus.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseUnisysClearPath</td>
<td>IdFTPListParseUnisysClearPath.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseUnix</td>
<td>IdFTPListParseUnix.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseVM</td>
<td>IdFTPListParseVM.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseVMS</td>
<td>IdFTPListParseVMS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseVSE</td>
<td>IdFTPListParseVSE.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseVxWorks</td>
<td>IdFTPListParseVxWorks.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseWfFTP</td>
<td>IdFTPListParseWfFTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseWindowsNT</td>
<td>IdFTPListParseWindowsNT.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseWinQVTNET</td>
<td>IdFTPListParseWinQVTNET.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListParseXecomMicroRTOS</td>
<td>IdFTPListParseXecomMicroRTOS.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPListTypes</td>
<td>IdFTPListTypes.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPServer</td>
<td>IdFTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdFTPServerContextBase</td>
<td>IdFTPServerContextBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdGlobalProtocols</td>
<td>IdGlobalProtocols.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdGopher</td>
<td>IdGopher.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdGopherConsts</td>
<td>IdGopherConsts.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdGopherServer</td>
<td>IdGopherServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHash</td>
<td>IdHash.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHashCRC</td>
<td>IdHashCRC.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHashElf</td>
<td>IdHashElf.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHashMessageDigest</td>
<td>IdHashMessageDigest.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHashSHA</td>
<td>IdHashSHA.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderCoder2022JP</td>
<td>IdHeaderCoder2022JP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderCoderBase</td>
<td>IdHeaderCoderBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderCoderIndy</td>
<td>IdHeaderCoderIndy.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderCoderPlain</td>
<td>IdHeaderCoderPlain.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderCoderUTF</td>
<td>IdHeaderCoderUTF.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHeaderList</td>
<td>IdHeaderList.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHMAC</td>
<td>IdHMAC.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHMACMD5</td>
<td>IdHMACMD5.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHMACSHA1</td>
<td>IdHMACSHA1.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHTTP</td>
<td>IdHTTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHTTPHeaderInfo</td>
<td>IdHTTPHeaderInfo.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHTTPProxyServer</td>
<td>IdHTTPProxyServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHTTPServer</td>
<td>IdHTTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdHTTPWebBrokerBridge</td>
<td>IdHTTPWebBrokerBridge.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIdent</td>
<td>IdIdent.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIdentServer</td>
<td>IdIdentServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIMAP4</td>
<td>IdIMAP4.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIMAP4Server</td>
<td>IdIMAP4Server.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIPAddrMon</td>
<td>IdIPAddrMon.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIPWatch</td>
<td>IdIPWatch.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIRC</td>
<td>IdIRC.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdIrcServer</td>
<td>IdIrcServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdLPR</td>
<td>IdLPR.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMailBox</td>
<td>IdMailBox.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMappedFTP</td>
<td>IdMappedFTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMappedPOP3</td>
<td>IdMappedPOP3.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMappedPortTCP</td>
<td>IdMappedPortTCP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMappedPortUDP</td>
<td>IdMappedPortUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMappedTelnet</td>
<td>IdMappedTelnet.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessage</td>
<td>IdMessage.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageBuilder</td>
<td>IdMessageBuilder.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageClient</td>
<td>IdMessageClient.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoder</td>
<td>IdMessageCoder.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderBinHex4</td>
<td>IdMessageCoderBinHex4.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderMIME</td>
<td>IdMessageCoderMIME.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderQuotedPrintable</td>
<td>IdMessageCoderQuotedPrintable.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderUUE</td>
<td>IdMessageCoderUUE.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderXXE</td>
<td>IdMessageCoderXXE.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCoderYenc</td>
<td>IdMessageCoderYenc.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageCollection</td>
<td>IdMessageCollection.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMessageParts</td>
<td>IdMessageParts.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdMultipartFormData</td>
<td>IdMultipartFormData.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdNetworkCalculator</td>
<td>IdNetworkCalculator.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdNNTP</td>
<td>IdNNTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdNNTPServer</td>
<td>IdNNTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdNTLM</td>
<td>IdNTLM.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdOSFileName</td>
<td>IdOSFileName.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdOTPCalculator</td>
<td>IdOTPCalculator.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdPOP3</td>
<td>IdPOP3.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdPOP3Server</td>
<td>IdPOP3Server.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdQotd</td>
<td>IdQotd.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdQotdServer</td>
<td>IdQotdServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdQOTDUDP</td>
<td>IdQOTDUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdQOTDUDPServer</td>
<td>IdQOTDUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRemoteCMDClient</td>
<td>IdRemoteCMDClient.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRemoteCMDServer</td>
<td>IdRemoteCMDServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdReplyFTP</td>
<td>IdReplyFTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdReplyIMAP4</td>
<td>IdReplyIMAP4.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdReplyPOP3</td>
<td>IdReplyPOP3.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdReplySMTP</td>
<td>IdReplySMTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdResourceStringsProtocols</td>
<td>IdResourceStringsProtocols.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRexec</td>
<td>IdRexec.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRexecServer</td>
<td>IdRexecServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRSH</td>
<td>IdRSH.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdRSHServer</td>
<td>IdRSHServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASL</td>
<td>IdSASL.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLAnonymous</td>
<td>IdSASLAnonymous.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLCollection</td>
<td>IdSASLCollection.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLDigest</td>
<td>IdSASLDigest.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLExternal</td>
<td>IdSASLExternal.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLLogin</td>
<td>IdSASLLogin.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLOTP</td>
<td>IdSASLOTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLPlain</td>
<td>IdSASLPlain.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLSKey</td>
<td>IdSASLSKey.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASLUserPass</td>
<td>IdSASLUserPass.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASL_CRAMBase</td>
<td>IdSASL_CRAMBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASL_CRAM_MD5</td>
<td>IdSASL_CRAM_MD5.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSASL_CRAM_SHA1</td>
<td>IdSASL_CRAM_SHA1.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdServerInterceptLogBase</td>
<td>IdServerInterceptLogBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdServerInterceptLogEvent</td>
<td>IdServerInterceptLogEvent.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdServerInterceptLogFile</td>
<td>IdServerInterceptLogFile.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSMTP</td>
<td>IdSMTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSMTPBase</td>
<td>IdSMTPBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSMTPRelay</td>
<td>IdSMTPRelay.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSMTPServer</td>
<td>IdSMTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSNMP</td>
<td>IdSNMP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSNPP</td>
<td>IdSNPP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSNTP</td>
<td>IdSNTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSocksServer</td>
<td>IdSocksServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSSL</td>
<td>IdSSL.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSSLOpenSSL</td>
<td>IdSSLOpenSSL.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSSLOpenSSLHeaders</td>
<td>IdSSLOpenSSLHeaders.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSSLOpenSSLUtils</td>
<td>IdSSLOpenSSLUtils.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSSPI</td>
<td>IdSSPI.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdStrings</td>
<td>IdStrings.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSysLog</td>
<td>IdSysLog.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSysLogMessage</td>
<td>IdSysLogMessage.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSysLogServer</td>
<td>IdSysLogServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSystat</td>
<td>IdSystat.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSystatServer</td>
<td>IdSystatServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSystatUDP</td>
<td>IdSystatUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdSystatUDPServer</td>
<td>IdSystatUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTelnet</td>
<td>IdTelnet.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTelnetServer</td>
<td>IdTelnetServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdText</td>
<td>IdText.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTime</td>
<td>IdTime.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTimeServer</td>
<td>IdTimeServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTimeUDP</td>
<td>IdTimeUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTimeUDPServer</td>
<td>IdTimeUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTrivialFTP</td>
<td>IdTrivialFTP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTrivialFTPBase</td>
<td>IdTrivialFTPBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdTrivialFTPServer</td>
<td>IdTrivialFTPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUnixTime</td>
<td>IdUnixTime.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUnixTimeServer</td>
<td>IdUnixTimeServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUnixTimeUDP</td>
<td>IdUnixTimeUDP.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUnixTimeUDPServer</td>
<td>IdUnixTimeUDPServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdURI</td>
<td>IdURI.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUriUtils</td>
<td>IdUriUtils.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUserAccounts</td>
<td>IdUserAccounts.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdUserPassProvider</td>
<td>IdUserPassProvider.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdVCard</td>
<td>IdVCard.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdWebDAV</td>
<td>IdWebDAV.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdWhois</td>
<td>IdWhois.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdWhoIsServer</td>
<td>IdWhoIsServer.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdZLib</td>
<td>IdZLib.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdZLibCompressorBase</td>
<td>IdZLibCompressorBase.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdZLibConst</td>
<td>IdZLibConst.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdZLibHeaders</td>
<td>IdZLibHeaders.pas</td>
<td>&#8230;\Indy10\Protocols\</td>
</tr>
<tr>
<td></td>
<td>IdAntiFreezeBase</td>
<td>IdAntiFreezeBase.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdBaseComponent</td>
<td>IdBaseComponent.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdComponent</td>
<td>IdComponent.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdCTypes</td>
<td>IdCTypes.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdException</td>
<td>IdException.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdGlobal</td>
<td>IdGlobal.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdResourceStrings</td>
<td>IdResourceStrings.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStack</td>
<td>IdStack.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStackBSDBase</td>
<td>IdStackBSDBase.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStackConsts</td>
<td>IdStackConsts.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStackVCLPosix</td>
<td>IdStackVCLPosix.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStackWindows</td>
<td>IdStackWindows.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStream</td>
<td>IdStream.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStreamVCL</td>
<td>IdStreamVCL.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdStruct</td>
<td>IdStruct.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdVCLPosixSupplemental</td>
<td>IdVCLPosixSupplemental.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdWinsock2</td>
<td>IdWinsock2.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>IdWship6</td>
<td>IdWship6.pas</td>
<td>&#8230;\Indy10\System\</td>
</tr>
<tr>
<td></td>
<td>AdaptReq</td>
<td>AdaptReq.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>AddActn</td>
<td>AddActn.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>AscrLib</td>
<td>AscrLib.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ASPBehavior</td>
<td>ASPBehavior.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>AutoAdap</td>
<td>AutoAdap.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>AutoAdapAS</td>
<td>AutoAdapAS.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Bde</td>
<td>DBBdeWeb</td>
<td>Bde.DBBdeWeb.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ComApp</td>
<td>ComApp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>CompProd</td>
<td>CompProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>DBAdapt</td>
<td>DBAdapt.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>DBAdaptImg</td>
<td>DBAdaptImg.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ExDispID</td>
<td>ExDispID.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>HTTPParse</td>
<td>HTTPParse.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>idispids</td>
<td>idispids.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>idoc</td>
<td>idoc.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>IEActions</td>
<td>IEActions.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>IEConst</td>
<td>IEConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>IndySockTransport</td>
<td>IndySockTransport.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>MidComp</td>
<td>MidComp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>MidItems</td>
<td>MidItems.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>MidProd</td>
<td>MidProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>mshtmcid</td>
<td>mshtmcid.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>Mshtmdid</td>
<td>Mshtmdid.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>MSHTML</td>
<td>MSHTML.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>PagItems</td>
<td>PagItems.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ReqFiles</td>
<td>ReqFiles.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ReqMulti</td>
<td>ReqMulti.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ScrptMgr</td>
<td>ScrptMgr.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SessColn</td>
<td>SessColn.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SHDocVw</td>
<td>SHDocVw.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SiteComp</td>
<td>SiteComp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SiteConst</td>
<td>SiteConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SiteProd</td>
<td>SiteProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockApp</td>
<td>SockApp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockAppHlpr</td>
<td>SockAppHlpr.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockAppNotify</td>
<td>SockAppNotify.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockAppReg</td>
<td>SockAppReg.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockConst</td>
<td>SockConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockHTTP</td>
<td>SockHTTP.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockRequestInterpreter</td>
<td>SockRequestInterpreter.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SockTransport</td>
<td>SockTransport.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrConst</td>
<td>SvrConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>svrhttpindy</td>
<td>svrhttpindy.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrInfoConsole</td>
<td>SvrInfoConsole.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrInfoConst</td>
<td>SvrInfoConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrInfoModule</td>
<td>SvrInfoModule.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrLog</td>
<td>SvrLog.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrLogColSettingsFrame</td>
<td>SvrLogColSettingsFrame.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrLogDetailDlg</td>
<td>SvrLogDetailDlg.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrLogDetailFrame</td>
<td>SvrLogDetailFrame.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrLogFrame</td>
<td>SvrLogFrame.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrMainForm</td>
<td>SvrMainForm.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrPropDlg</td>
<td>SvrPropDlg.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrSockRequest</td>
<td>SvrSockRequest.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>SvrStatsFrame</td>
<td>SvrStatsFrame.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>UrlHist</td>
<td>UrlHist.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>UTF8ContentParser</td>
<td>UTF8ContentParser.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WBComp</td>
<td>WBComp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WbmConst</td>
<td>WbmConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>AutoDisp</td>
<td>Web.AutoDisp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>BrkrConst</td>
<td>Web.BrkrConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>CGIApp</td>
<td>Web.CGIApp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>CGIHTTP</td>
<td>Web.CGIHTTP.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>CopyPrsr</td>
<td>Web.CopyPrsr.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>DBWeb</td>
<td>Web.DBWeb.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>DBXpressWeb</td>
<td>Web.DBXpressWeb.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>DSProd</td>
<td>Web.DSProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>HTTPApp</td>
<td>Web.HTTPApp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>HTTPProd</td>
<td>Web.HTTPProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>WebBroker</td>
<td>Web.WebBroker.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>WebCntxt</td>
<td>Web.WebCntxt.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>WebConst</td>
<td>Web.WebConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>WebFileDispatcher</td>
<td>Web.WebFileDispatcher.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web</td>
<td>WebReq</td>
<td>Web.WebReq.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>AdsConst</td>
<td>Web.Win.AdsConst.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>AdsTypes</td>
<td>Web.Win.AdsTypes.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>ISAPIApp</td>
<td>Web.Win.ISAPIApp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>IsapiHTTP</td>
<td>Web.Win.IsapiHTTP.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>ISAPIThreadPool</td>
<td>Web.Win.ISAPIThreadPool.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td>Web.Win</td>
<td>Sockets</td>
<td>Web.Win.Sockets.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebAdapt</td>
<td>WebAdapt.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebAppDbgAbout</td>
<td>WebAppDbgAbout.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebAuto</td>
<td>WebAuto.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebBrowserEx</td>
<td>WebBrowserEx.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebCat</td>
<td>WebCat.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebComp</td>
<td>WebComp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebContnrs</td>
<td>WebContnrs.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebDisp</td>
<td>WebDisp.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebFact</td>
<td>WebFact.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebForm</td>
<td>WebForm.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebModu</td>
<td>WebModu.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebScript</td>
<td>WebScript.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebScriptAS</td>
<td>WebScriptAS.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebSess</td>
<td>WebSess.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebSnapObjs</td>
<td>WebSnapObjs.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>WebUsers</td>
<td>WebUsers.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>XMLBrokr</td>
<td>XMLBrokr.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>xmlutil</td>
<td>xmlutil.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>Xmlxform</td>
<td>Xmlxform.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>XSLProd</td>
<td>XSLProd.pas</td>
<td>&#8230;\internet\</td>
</tr>
<tr>
<td></td>
<td>ActnRes</td>
<td>ActnRes.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ADOReg</td>
<td>ADOReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompBasePropEditor</td>
<td>BindCompBasePropEditor.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompDBReg</td>
<td>BindCompDBReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompDesign</td>
<td>BindCompDesign.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompDesigners</td>
<td>BindCompDesigners.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompDrag</td>
<td>BindCompDrag.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompDsnResStrs</td>
<td>BindCompDsnResStrs.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompEdit</td>
<td>BindCompEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompExprEdit</td>
<td>BindCompExprEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompFMXReg</td>
<td>BindCompFMXReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompNewStd</td>
<td>BindCompNewStd.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompProperties</td>
<td>BindCompProperties.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompReg</td>
<td>BindCompReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindCompVCLReg</td>
<td>BindCompVCLReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindMethodsFormU</td>
<td>BindMethodsFormU.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindOutputConvertersFormU</td>
<td>BindOutputConvertersFormU.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>BindVisualizers</td>
<td>BindVisualizers.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>CDSEdit</td>
<td>CDSEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ColEdit</td>
<td>ColEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ColnEdit</td>
<td>ColnEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DbActRes</td>
<td>DbActRes.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DBClientActnRes</td>
<td>DBClientActnRes.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DBColnEd</td>
<td>DBColnEd.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DBOleEdt</td>
<td>DBOleEdt.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DBReg</td>
<td>DBReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DSAdd</td>
<td>DSAdd.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DSDefine</td>
<td>DSDefine.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>DSDesign</td>
<td>DSDesign.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>FiltEdit</td>
<td>FiltEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>FldLinks</td>
<td>FldLinks.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>HCtlEdit</td>
<td>HCtlEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IBConst</td>
<td>IBConst.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IBCtrls</td>
<td>IBCtrls.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IBDemoReg</td>
<td>IBDemoReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IBEvnts</td>
<td>IBEvnts.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IBProc32</td>
<td>IBProc32.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ImgEdit</td>
<td>ImgEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ItemEdit</td>
<td>ItemEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>LMidReg</td>
<td>LMidReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>MaskProp</td>
<td>MaskProp.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>MaskText</td>
<td>MaskText.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>MidReg</td>
<td>MidReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>NewStdAc</td>
<td>NewStdAc.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>NodeEdit</td>
<td>NodeEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>OCXReg</td>
<td>OCXReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>PicEdit</td>
<td>PicEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>SBarEdit</td>
<td>SBarEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>SqlEdit</td>
<td>SqlEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>StFilSys</td>
<td>StFilSys.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>StrEdit</td>
<td>StrEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>StringsEdit</td>
<td>StringsEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>ValueEdit</td>
<td>ValueEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>VclDBReg</td>
<td>VclDBReg.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>WideSQLEdit</td>
<td>WideSQLEdit.pas</td>
<td>&#8230;\Property Editors\</td>
</tr>
<tr>
<td></td>
<td>IdAboutVCL</td>
<td>IdAboutVCL.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdAntiFreeze</td>
<td>IdAntiFreeze.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdCoreDsnRegister</td>
<td>IdCoreDsnRegister.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdCoreSelectionEditors</td>
<td>IdCoreSelectionEditors.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdDsnCoreResourceStrings</td>
<td>IdDsnCoreResourceStrings.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdDsnPropEdBindingVCL</td>
<td>IdDsnPropEdBindingVCL.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdDsnRegister</td>
<td>IdDsnRegister.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdDsnResourceStrings</td>
<td>IdDsnResourceStrings.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdDsnSASLListEditorFormVCL</td>
<td>IdDsnSASLListEditorFormVCL.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdRegister</td>
<td>IdRegister.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td></td>
<td>IdRegisterCore</td>
<td>IdRegisterCore.pas</td>
<td>&#8230;\Property Editors\Indy10\</td>
</tr>
<tr>
<td>System</td>
<td>AnsiStrings</td>
<td>System.AnsiStrings.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Character</td>
<td>System.Character.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Classes</td>
<td>System.Classes.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Contnrs</td>
<td>System.Contnrs.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>ConvUtils</td>
<td>System.ConvUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>DateUtils</td>
<td>System.DateUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>DebugUtils</td>
<td>System.DebugUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Diagnostics</td>
<td>System.Diagnostics.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Generics</td>
<td>Collections</td>
<td>System.Generics.Collections.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Generics</td>
<td>Defaults</td>
<td>System.Generics.Defaults.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>HelpIntfs</td>
<td>System.HelpIntfs.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>IniFiles</td>
<td>System.IniFiles.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>IOUtils</td>
<td>System.IOUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Masks</td>
<td>System.Masks.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>MaskUtils</td>
<td>System.MaskUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Math</td>
<td>System.Math.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>ObjAuto</td>
<td>System.ObjAuto.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Odbc</td>
<td>System.Odbc.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>RegularExpressions</td>
<td>System.RegularExpressions.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>RegularExpressionsAPI</td>
<td>System.RegularExpressionsAPI.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>RegularExpressionsConsts</td>
<td>System.RegularExpressionsConsts.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>RegularExpressionsCore</td>
<td>System.RegularExpressionsCore.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>RTLConsts</td>
<td>System.RTLConsts.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Rtti</td>
<td>System.Rtti.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>StdConvs</td>
<td>System.StdConvs.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>StrUtils</td>
<td>System.StrUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>SyncObjs</td>
<td>System.SyncObjs.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>TimeSpan</td>
<td>System.TimeSpan.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>TypInfo</td>
<td>System.TypInfo.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>UIConsts</td>
<td>System.UIConsts.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>UITypes</td>
<td>System.UITypes.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>VarCmplx</td>
<td>System.VarCmplx.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>VarConv</td>
<td>System.VarConv.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>WideStrings</td>
<td>System.WideStrings.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>WideStrUtils</td>
<td>System.WideStrUtils.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ComConst</td>
<td>System.Win.ComConst.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ComObj</td>
<td>System.Win.ComObj.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ComObjWrapper</td>
<td>System.Win.ComObjWrapper.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ComServ</td>
<td>System.Win.ComServ.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>Crtl</td>
<td>System.Win.Crtl.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>Mtsobj</td>
<td>System.Win.Mtsobj.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ObjComAuto</td>
<td>System.Win.ObjComAuto.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>Registry</td>
<td>System.Win.Registry.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>ScktComp</td>
<td>System.Win.ScktComp.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>StdVCL</td>
<td>System.Win.StdVCL.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System.Win</td>
<td>VCLCom</td>
<td>System.Win.VCLCom.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>Zip</td>
<td>System.Zip.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>ZLib</td>
<td>System.ZLib.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>System</td>
<td>ZLibConst</td>
<td>System.ZLibConst.pas</td>
<td>&#8230;\rtl\common\</td>
</tr>
<tr>
<td>Macapi</td>
<td>AppKit</td>
<td>Macapi.AppKit.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>CocoaTypes</td>
<td>Macapi.CocoaTypes.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>Consts</td>
<td>Macapi.Consts.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>CoreFoundation</td>
<td>Macapi.CoreFoundation.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>CoreGraphics</td>
<td>Macapi.CoreGraphics.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>CoreServices</td>
<td>Macapi.CoreServices.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>CoreText</td>
<td>Macapi.CoreText.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>Foundation</td>
<td>Macapi.Foundation.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>ImageIO</td>
<td>Macapi.ImageIO.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>Mach</td>
<td>Macapi.Mach.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>ObjCRuntime</td>
<td>Macapi.ObjCRuntime.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>ObjectiveC</td>
<td>Macapi.ObjectiveC.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>OCMarshal</td>
<td>Macapi.OCMarshal.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>OpenGL</td>
<td>Macapi.OpenGL.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>QuartzCore</td>
<td>Macapi.QuartzCore.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>Security</td>
<td>Macapi.Security.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Macapi</td>
<td>SystemConfiguration</td>
<td>Macapi.SystemConfiguration.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>System.Mac</td>
<td>CFUtils</td>
<td>System.Mac.CFUtils.pas</td>
<td>&#8230;\rtl\osx\</td>
</tr>
<tr>
<td>Posix</td>
<td>ArpaInet</td>
<td>Posix.ArpaInet.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Base</td>
<td>Posix.Base.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Dirent</td>
<td>Posix.Dirent.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Dlfcn</td>
<td>Posix.Dlfcn.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Errno</td>
<td>Posix.Errno.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Fcntl</td>
<td>Posix.Fcntl.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Fnmatch</td>
<td>Posix.Fnmatch.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Grp</td>
<td>Posix.Grp.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Iconv</td>
<td>Posix.Iconv.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Langinfo</td>
<td>Posix.Langinfo.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Limits</td>
<td>Posix.Limits.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Locale</td>
<td>Posix.Locale.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetDB</td>
<td>Posix.NetDB.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetIf</td>
<td>Posix.NetIf.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetinetIcmp6</td>
<td>Posix.NetinetIcmp6.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetinetIn</td>
<td>Posix.NetinetIn.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetinetIp6</td>
<td>Posix.NetinetIp6.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>NetinetTCP</td>
<td>Posix.NetinetTCP.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Pthread</td>
<td>Posix.Pthread.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Pwd</td>
<td>Posix.Pwd.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Sched</td>
<td>Posix.Sched.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Semaphore</td>
<td>Posix.Semaphore.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Signal</td>
<td>Posix.Signal.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>StdDef</td>
<td>Posix.StdDef.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Stdio</td>
<td>Posix.Stdio.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Stdlib</td>
<td>Posix.Stdlib.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>String_</td>
<td>Posix.String_.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>StrOpts</td>
<td>Posix.StrOpts.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysMman</td>
<td>Posix.SysMman.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysSelect</td>
<td>Posix.SysSelect.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysSocket</td>
<td>Posix.SysSocket.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysStat</td>
<td>Posix.SysStat.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysStatvfs</td>
<td>Posix.SysStatvfs.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysSysctl</td>
<td>Posix.SysSysctl.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysTime</td>
<td>Posix.SysTime.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysTimes</td>
<td>Posix.SysTimes.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysTypes</td>
<td>Posix.SysTypes.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysUio</td>
<td>Posix.SysUio.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysUn</td>
<td>Posix.SysUn.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>SysWait</td>
<td>Posix.SysWait.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Termios</td>
<td>Posix.Termios.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Time</td>
<td>Posix.Time.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Unistd</td>
<td>Posix.Unistd.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Utime</td>
<td>Posix.Utime.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Wchar</td>
<td>Posix.Wchar.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Wctype</td>
<td>Posix.Wctype.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td>Posix</td>
<td>Wordexp</td>
<td>Posix.Wordexp.pas</td>
<td>&#8230;\rtl\posix\</td>
</tr>
<tr>
<td></td>
<td>SysInit</td>
<td>SysInit.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>ExcUtils</td>
<td>System.Internal.ExcUtils.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>MachExceptions</td>
<td>System.Internal.MachExceptions.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>StrHlpr</td>
<td>System.Internal.StrHlpr.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>Unwind</td>
<td>System.Internal.Unwind.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>Unwinder</td>
<td>System.Internal.Unwinder.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System.Internal</td>
<td>VarHlpr</td>
<td>System.Internal.VarHlpr.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td></td>
<td>System</td>
<td>System.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>Sharemem</td>
<td>System.Sharemem.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>SimpleShareMem</td>
<td>System.SimpleShareMem.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>SysConst</td>
<td>System.SysConst.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>SysUtils</td>
<td>System.SysUtils.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>Types</td>
<td>System.Types.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>Variants</td>
<td>System.Variants.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>System</td>
<td>VarUtils</td>
<td>System.VarUtils.pas</td>
<td>&#8230;\rtl\sys\</td>
</tr>
<tr>
<td>Winapi</td>
<td>AccCtrl</td>
<td>Winapi.AccCtrl.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>AclAPI</td>
<td>Winapi.AclAPI.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ActiveX</td>
<td>Winapi.ActiveX.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ADOInt</td>
<td>Winapi.ADOInt.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>AspTlb</td>
<td>Winapi.AspTlb.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>COMAdmin</td>
<td>Winapi.COMAdmin.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>CommCtrl</td>
<td>Winapi.CommCtrl.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>CommDlg</td>
<td>Winapi.CommDlg.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ComSvcs</td>
<td>Winapi.ComSvcs.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Cor</td>
<td>Winapi.Cor.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>CorError</td>
<td>Winapi.CorError.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>CorHdr</td>
<td>Winapi.CorHdr.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Cpl</td>
<td>Winapi.Cpl.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>D2D1</td>
<td>Winapi.D2D1.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>D3D10</td>
<td>Winapi.D3D10.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>D3DX10</td>
<td>Winapi.D3DX10.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>D3DX8</td>
<td>Winapi.D3DX8.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>D3DX9</td>
<td>Winapi.D3DX9.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DDEml</td>
<td>Winapi.DDEml.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Direct3D</td>
<td>Winapi.Direct3D.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Direct3D8</td>
<td>Winapi.Direct3D8.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Direct3D9</td>
<td>Winapi.Direct3D9.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectDraw</td>
<td>Winapi.DirectDraw.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectInput</td>
<td>Winapi.DirectInput.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectMusic</td>
<td>Winapi.DirectMusic.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectPlay8</td>
<td>Winapi.DirectPlay8.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectShow9</td>
<td>Winapi.DirectShow9.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DirectSound</td>
<td>Winapi.DirectSound.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Dlgs</td>
<td>Winapi.Dlgs.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DwmApi</td>
<td>Winapi.DwmApi.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DX7toDX8</td>
<td>Winapi.DX7toDX8.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DxDiag</td>
<td>Winapi.DxDiag.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DXFile</td>
<td>Winapi.DXFile.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DXGI</td>
<td>Winapi.DXGI.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DxgiFormat</td>
<td>Winapi.DxgiFormat.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DxgiType</td>
<td>Winapi.DxgiType.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>DXTypes</td>
<td>Winapi.DXTypes.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>FlatSB</td>
<td>Winapi.FlatSB.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>GDIPAPI</td>
<td>Winapi.GDIPAPI.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>GDIPOBJ</td>
<td>Winapi.GDIPOBJ.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>GDIPUTIL</td>
<td>Winapi.GDIPUTIL.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ImageHlp</td>
<td>Winapi.ImageHlp.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Imm</td>
<td>Winapi.Imm.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>IpExport</td>
<td>Winapi.IpExport.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>IpHlpApi</td>
<td>Winapi.IpHlpApi.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>IpRtrMib</td>
<td>Winapi.IpRtrMib.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>IpTypes</td>
<td>Winapi.IpTypes.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Isapi</td>
<td>Winapi.Isapi.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Isapi2</td>
<td>Winapi.Isapi2.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>KnownFolders</td>
<td>Winapi.KnownFolders.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>LZExpand</td>
<td>Winapi.LZExpand.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Manipulations</td>
<td>Winapi.Manipulations.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Mapi</td>
<td>Winapi.Mapi.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Messages</td>
<td>Winapi.Messages.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>MMSystem</td>
<td>Winapi.MMSystem.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>MsInkAut</td>
<td>Winapi.MsInkAut.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>MsInkAut15</td>
<td>Winapi.MsInkAut15.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>msxml</td>
<td>Winapi.msxml.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Mtx</td>
<td>Winapi.Mtx.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>MultiMon</td>
<td>Winapi.MultiMon.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Nb30</td>
<td>Winapi.Nb30.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ObjectArray</td>
<td>Winapi.ObjectArray.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Ole2</td>
<td>Winapi.Ole2.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>oleacc</td>
<td>Winapi.oleacc.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>OleCtl</td>
<td>Winapi.OleCtl.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>OleDB</td>
<td>Winapi.OleDB.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>OleDlg</td>
<td>Winapi.OleDlg.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>OpenGL</td>
<td>Winapi.OpenGL.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Penwin</td>
<td>Winapi.Penwin.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>PropKey</td>
<td>Winapi.PropKey.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>PropSys</td>
<td>Winapi.PropSys.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>PsAPI</td>
<td>Winapi.PsAPI.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Qos</td>
<td>Winapi.Qos.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>RegStr</td>
<td>Winapi.RegStr.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>RichEdit</td>
<td>Winapi.RichEdit.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>RtsCom</td>
<td>Winapi.RtsCom.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ShellAPI</td>
<td>Winapi.ShellAPI.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>SHFolder</td>
<td>Winapi.SHFolder.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ShlObj</td>
<td>Winapi.ShlObj.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>ShLwApi</td>
<td>Winapi.ShLwApi.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>StructuredQuery</td>
<td>Winapi.StructuredQuery.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>StructuredQueryCondition</td>
<td>Winapi.StructuredQueryCondition.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>TlHelp32</td>
<td>Winapi.TlHelp32.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>TpcShrd</td>
<td>Winapi.TpcShrd.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>UrlMon</td>
<td>Winapi.UrlMon.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>UxTheme</td>
<td>Winapi.UxTheme.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Wincodec</td>
<td>Winapi.Wincodec.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Windows</td>
<td>Winapi.Windows.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>WinInet</td>
<td>Winapi.WinInet.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Winsafer</td>
<td>Winapi.Winsafer.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>WinSock</td>
<td>Winapi.WinSock.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>Winsock2</td>
<td>Winapi.Winsock2.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>WinSpool</td>
<td>Winapi.WinSpool.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>WinSvc</td>
<td>Winapi.WinSvc.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Winapi</td>
<td>WMF9</td>
<td>Winapi.WMF9.pas</td>
<td>&#8230;\rtl\win\</td>
</tr>
<tr>
<td>Soap</td>
<td>EncdDecd</td>
<td>Soap.EncdDecd.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>HTTPSOAPToPasBind</td>
<td>Soap.HTTPSOAPToPasBind.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>HTTPUtil</td>
<td>Soap.HTTPUtil.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>inquire_v1</td>
<td>Soap.inquire_v1.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>IntfInfo</td>
<td>Soap.IntfInfo.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>InvConst</td>
<td>Soap.InvConst.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>Invoker</td>
<td>Soap.Invoker.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>InvokeRegistry</td>
<td>Soap.InvokeRegistry.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>OPConvert</td>
<td>Soap.OPConvert.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>OpConvertOptions</td>
<td>Soap.OpConvertOptions.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>OPToSOAPDomConv</td>
<td>Soap.OPToSOAPDomConv.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>OPToSOAPDomCustom</td>
<td>Soap.OPToSOAPDomCustom.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>Rio</td>
<td>Soap.Rio.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPAttach</td>
<td>Soap.SOAPAttach.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPAttachIntf</td>
<td>Soap.SOAPAttachIntf.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPConn</td>
<td>Soap.SOAPConn.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPConst</td>
<td>Soap.SOAPConst.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPDm</td>
<td>Soap.SOAPDm.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPDomConv</td>
<td>Soap.SOAPDomConv.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPEnv</td>
<td>Soap.SOAPEnv.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPHTTPClient</td>
<td>Soap.SOAPHTTPClient.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPHTTPDisp</td>
<td>Soap.SOAPHTTPDisp.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPHTTPPasInv</td>
<td>Soap.SOAPHTTPPasInv.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPHTTPTrans</td>
<td>Soap.SOAPHTTPTrans.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPLinked</td>
<td>Soap.SOAPLinked.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPMidas</td>
<td>Soap.SOAPMidas.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>SOAPPasInv</td>
<td>Soap.SOAPPasInv.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>TypeTrans</td>
<td>Soap.TypeTrans.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>UDDIHelper</td>
<td>Soap.UDDIHelper.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WebBrokerSOAP</td>
<td>Soap.WebBrokerSOAP.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WebNode</td>
<td>Soap.WebNode.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WebServExp</td>
<td>Soap.WebServExp.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap.Win</td>
<td>CertHelper</td>
<td>Soap.Win.CertHelper.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLBind</td>
<td>Soap.WSDLBind.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLIntf</td>
<td>Soap.WSDLIntf.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLItems</td>
<td>Soap.WSDLItems.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLLookup</td>
<td>Soap.WSDLLookup.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLNode</td>
<td>Soap.WSDLNode.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLPub</td>
<td>Soap.WSDLPub.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSDLSOAP</td>
<td>Soap.WSDLSOAP.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>WSILIntf</td>
<td>Soap.WSILIntf.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td>Soap</td>
<td>XSBuiltIns</td>
<td>Soap.XSBuiltIns.pas</td>
<td>&#8230;\soap\</td>
</tr>
<tr>
<td></td>
<td>MessageDigest_5</td>
<td>MessageDigest_5.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>UDDIHlprDesign</td>
<td>UDDIHlprDesign.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>WSDLCppWriter</td>
<td>WSDLCppWriter.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>WSDLImpConst</td>
<td>WSDLImpConst.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>WSDLImpWriter</td>
<td>WSDLImpWriter.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>WSDLModelIntf</td>
<td>WSDLModelIntf.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>WSDLPasWriter</td>
<td>WSDLPasWriter.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>XMLSchemaHelper</td>
<td>XMLSchemaHelper.pas</td>
<td>&#8230;\soap\wsdlimporter\</td>
</tr>
<tr>
<td></td>
<td>BCCStrs</td>
<td>BCCStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>BRCCStrs</td>
<td>BRCCStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>CodeTemplateAPI</td>
<td>CodeTemplateAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>CommonOptionStrs</td>
<td>CommonOptionStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>CPPCOMMONStrs</td>
<td>CPPCOMMONStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DCCStrs</td>
<td>DCCStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DeploymentAPI</td>
<td>DeploymentAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignConst</td>
<td>DesignConst.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignEditors</td>
<td>DesignEditors.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignerTypes</td>
<td>DesignerTypes.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignIntf</td>
<td>DesignIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignMenus</td>
<td>DesignMenus.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>DesignWindows</td>
<td>DesignWindows.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>EditIntf</td>
<td>EditIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>ExptIntf</td>
<td>ExptIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>FileHistoryAPI</td>
<td>FileHistoryAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>FileIntf</td>
<td>FileIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>ILinkStrs</td>
<td>ILinkStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>IStreams</td>
<td>IStreams.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>PaletteAPI</td>
<td>PaletteAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>PlatformAPI</td>
<td>PlatformAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>PropertyCategories</td>
<td>PropertyCategories.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>PropInspAPI</td>
<td>PropInspAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>StructureViewAPI</td>
<td>StructureViewAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>TasmStrs</td>
<td>TasmStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>TlibStrs</td>
<td>TlibStrs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>ToolIntf</td>
<td>ToolIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>ToolsAPI</td>
<td>ToolsAPI.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>ToolWnds</td>
<td>ToolWnds.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>TreeIntf</td>
<td>TreeIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>VCLEditors</td>
<td>VCLEditors.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>VCLSprigs</td>
<td>VCLSprigs.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>VirtIntf</td>
<td>VirtIntf.pas</td>
<td>&#8230;\ToolsAPI\</td>
</tr>
<tr>
<td></td>
<td>colorpp</td>
<td>colorpp.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>CtlConsts</td>
<td>CtlConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>CtlPanel</td>
<td>CtlPanel.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>fontpp</td>
<td>fontpp.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>picpp</td>
<td>picpp.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>StdMain</td>
<td>StdMain.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>stringpp</td>
<td>stringpp.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ABAccessibility</td>
<td>Vcl.ABAccessibility.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnColorMaps</td>
<td>Vcl.ActnColorMaps.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnCtrls</td>
<td>Vcl.ActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnList</td>
<td>Vcl.ActnList.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnMan</td>
<td>Vcl.ActnMan.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnMenus</td>
<td>Vcl.ActnMenus.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ActnPopup</td>
<td>Vcl.ActnPopup.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>AppEvnts</td>
<td>Vcl.AppEvnts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>AxCtrls</td>
<td>Vcl.AxCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>BandActn</td>
<td>Vcl.BandActn.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ButtonGroup</td>
<td>Vcl.ButtonGroup.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Buttons</td>
<td>Vcl.Buttons.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>CaptionedDockTree</td>
<td>Vcl.CaptionedDockTree.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>CategoryButtons</td>
<td>Vcl.CategoryButtons.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>CheckLst</td>
<td>Vcl.CheckLst.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Clipbrd</td>
<td>Vcl.Clipbrd.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>CmAdmCtl</td>
<td>Vcl.CmAdmCtl.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ColorGrd</td>
<td>Vcl.ColorGrd.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ComCtrls</td>
<td>Vcl.ComCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ComStrs</td>
<td>Vcl.ComStrs.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Consts</td>
<td>Vcl.Consts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Controls</td>
<td>Vcl.Controls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>CustomizeDlg</td>
<td>Vcl.CustomizeDlg.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DdeMan</td>
<td>Vcl.DdeMan.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Dialogs</td>
<td>Vcl.Dialogs.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Direct2D</td>
<td>Vcl.Direct2D.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>DockTabSet</td>
<td>Vcl.DockTabSet.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ExtActns</td>
<td>Vcl.ExtActns.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ExtCtrls</td>
<td>Vcl.ExtCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ExtDlgs</td>
<td>Vcl.ExtDlgs.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>FileCtrl</td>
<td>Vcl.FileCtrl.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Forms</td>
<td>Vcl.Forms.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Graphics</td>
<td>Vcl.Graphics.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>GraphUtil</td>
<td>Vcl.GraphUtil.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Grids</td>
<td>Vcl.Grids.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>HtmlHelpViewer</td>
<td>Vcl.HtmlHelpViewer.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>GIFConsts</td>
<td>Vcl.Imaging.GIFConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>GIFImg</td>
<td>Vcl.Imaging.GIFImg.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>JConsts</td>
<td>Vcl.Imaging.JConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>jpeg</td>
<td>Vcl.Imaging.jpeg.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>pngimage</td>
<td>Vcl.Imaging.pngimage.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Imaging</td>
<td>pnglang</td>
<td>Vcl.Imaging.pnglang.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ImgList</td>
<td>Vcl.ImgList.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>IMouse</td>
<td>Vcl.IMouse.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ListActns</td>
<td>Vcl.ListActns.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Mask</td>
<td>Vcl.Mask.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Menus</td>
<td>Vcl.Menus.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>MPlayer</td>
<td>Vcl.MPlayer.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>OleConst</td>
<td>Vcl.OleConst.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>OleCtnrs</td>
<td>Vcl.OleCtnrs.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>OleCtrls</td>
<td>Vcl.OleCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>OleServer</td>
<td>Vcl.OleServer.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Outline</td>
<td>Vcl.Outline.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>PlatformDefaultStyleActnCtrls</td>
<td>Vcl.PlatformDefaultStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Printers</td>
<td>Vcl.Printers.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Ribbon</td>
<td>Vcl.Ribbon.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonActnCtrls</td>
<td>Vcl.RibbonActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonActnMenus</td>
<td>Vcl.RibbonActnMenus.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonConsts</td>
<td>Vcl.RibbonConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonGalleryBar</td>
<td>Vcl.RibbonGalleryBar.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonLunaStyleActnCtrls</td>
<td>Vcl.RibbonLunaStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonObsidianStyleActnCtrls</td>
<td>Vcl.RibbonObsidianStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonSilverStyleActnCtrls</td>
<td>Vcl.RibbonSilverStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>RibbonStyleActnCtrls</td>
<td>Vcl.RibbonStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Samples</td>
<td>Calendar</td>
<td>Vcl.Samples.Calendar.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Samples</td>
<td>DirOutln</td>
<td>Vcl.Samples.DirOutln.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Samples</td>
<td>Gauges</td>
<td>Vcl.Samples.Gauges.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Samples</td>
<td>Spin</td>
<td>Vcl.Samples.Spin.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ScreenTips</td>
<td>Vcl.ScreenTips.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ShadowWnd</td>
<td>Vcl.ShadowWnd.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Shell</td>
<td>ShellConsts</td>
<td>Vcl.Shell.ShellConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Shell</td>
<td>ShellCtrls</td>
<td>Vcl.Shell.ShellCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ShellAnimations</td>
<td>Vcl.ShellAnimations.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>StdActnMenus</td>
<td>Vcl.StdActnMenus.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>StdActns</td>
<td>Vcl.StdActns.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>StdCtrls</td>
<td>Vcl.StdCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>StdStyleActnCtrls</td>
<td>Vcl.StdStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Styles</td>
<td>Vcl.Styles.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>SvcMgr</td>
<td>Vcl.SvcMgr.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>TabNotBk</td>
<td>Vcl.TabNotBk.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Tabs</td>
<td>Vcl.Tabs.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ThemedActnCtrls</td>
<td>Vcl.ThemedActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>Themes</td>
<td>Vcl.Themes.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ToolWin</td>
<td>Vcl.ToolWin.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>GestureConsts</td>
<td>Vcl.Touch.GestureConsts.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>GestureCtrls</td>
<td>Vcl.Touch.GestureCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>GestureMgr</td>
<td>Vcl.Touch.GestureMgr.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>Gestures</td>
<td>Vcl.Touch.Gestures.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>Keyboard</td>
<td>Vcl.Touch.Keyboard.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl.Touch</td>
<td>KeyboardTypes</td>
<td>Vcl.Touch.KeyboardTypes.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>ValEdit</td>
<td>Vcl.ValEdit.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>WinHelpViewer</td>
<td>Vcl.WinHelpViewer.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>XPActnCtrls</td>
<td>Vcl.XPActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>XPMan</td>
<td>Vcl.XPMan.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td>Vcl</td>
<td>XPStyleActnCtrls</td>
<td>Vcl.XPStyleActnCtrls.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>vclhlpr</td>
<td>vclhlpr.pas</td>
<td>&#8230;\vcl\</td>
</tr>
<tr>
<td></td>
<td>DateTimeVisualizer</td>
<td>DateTimeVisualizer.pas</td>
<td>&#8230;\Visualizers\</td>
</tr>
<tr>
<td></td>
<td>StdStringVisualizer</td>
<td>StdStringVisualizer.pas</td>
<td>&#8230;\Visualizers\</td>
</tr>
<tr>
<td></td>
<td>StringListVisualizer</td>
<td>StringListVisualizer.pas</td>
<td>&#8230;\Visualizers\</td>
</tr>
<tr>
<td>Xml</td>
<td>adomxmldom</td>
<td>Xml.adomxmldom.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>DTDSchema</td>
<td>Xml.DTDSchema.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>AbnfUtils</td>
<td>Xml.Internal.AbnfUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>AdomCore_4_3</td>
<td>Xml.Internal.AdomCore_4_3.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>CodecUtilsWin32</td>
<td>Xml.Internal.CodecUtilsWin32.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>EncodingUtils</td>
<td>Xml.Internal.EncodingUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>LangUtils</td>
<td>Xml.Internal.LangUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>ParserUtilsWin32</td>
<td>Xml.Internal.ParserUtilsWin32.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>TreeUtils</td>
<td>Xml.Internal.TreeUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>UriUtils</td>
<td>Xml.Internal.UriUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>WideStringUtils</td>
<td>Xml.Internal.WideStringUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Internal</td>
<td>XmlRulesUtils</td>
<td>Xml.Internal.XmlRulesUtils.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml.Win</td>
<td>msxmldom</td>
<td>Xml.Win.msxmldom.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XDRSchema</td>
<td>Xml.XDRSchema.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLConst</td>
<td>Xml.XMLConst.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLDataToSchema</td>
<td>Xml.XMLDataToSchema.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLDoc</td>
<td>Xml.XMLDoc.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>xmldom</td>
<td>Xml.xmldom.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLIniFile</td>
<td>Xml.XMLIniFile.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLIntf</td>
<td>Xml.XMLIntf.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLSchema</td>
<td>Xml.XMLSchema.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLSchema99</td>
<td>Xml.XMLSchema99.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td>Xml</td>
<td>XMLSchemaTags</td>
<td>Xml.XMLSchemaTags.pas</td>
<td>&#8230;\xml\</td>
</tr>
<tr>
<td></td>
<td>Mxarrays</td>
<td>Mxarrays.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXBUTTON</td>
<td>MXBUTTON.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXCOMMON</td>
<td>MXCOMMON.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>Mxconsts</td>
<td>Mxconsts.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDB</td>
<td>MXDB.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDCONST</td>
<td>MXDCONST.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDCUBE</td>
<td>MXDCUBE.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDIMEDT</td>
<td>MXDIMEDT.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDSQL</td>
<td>MXDSQL.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXDSSQRY</td>
<td>MXDSSQRY.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXGRAPH</td>
<td>MXGRAPH.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXGRID</td>
<td>MXGRID.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXPBAR</td>
<td>MXPBAR.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXPIVSRC</td>
<td>MXPIVSRC.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXQEDCOM</td>
<td>MXQEDCOM.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXQPARSE</td>
<td>MXQPARSE.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXREG</td>
<td>MXREG.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>Mxstore</td>
<td>Mxstore.pas</td>
<td>&#8230;\xtab\</td>
</tr>
<tr>
<td></td>
<td>MXTABLES</td>
<td>MXTABLES.pas</td>
<td>&#8230;\xtab\</td>
</tr>
</tbody>
</table>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6841/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6841/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6841/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6841&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/17/delphi-xe2-unit-scope-tables/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Deep Object Comparison Delphi &#8211; Stack Overflow</title>
		<link>http://wiert.me/2011/11/10/deep-object-comparison-delphi-stack-overflow/</link>
		<comments>http://wiert.me/2011/11/10/deep-object-comparison-delphi-stack-overflow/#comments</comments>
		<pubDate>Thu, 10 Nov 2011 05:00:47 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=7005</guid>
		<description><![CDATA[Last week there was an interesting question on Deep Object Comparison Delphi at Stack Overflow. Two nice answers: Recursive new style RTTI based solution (comparing all data) Streaming using OmniXML and comparing the output (comparing only the relevant data) &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7005&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Last week there was an interesting question on <a href="http://stackoverflow.com/questions/7994266/deep-object-comparison-delphi">Deep Object Comparison Delphi at Stack Overflow</a>.</p>
<p>Two nice answers:</p>
<ol>
<li><a href="http://stackoverflow.com/questions/7994266/deep-object-comparison-delphi/7997316#7997316" target="_blank">Recursive new style RTTI based solution</a> (comparing all data)</li>
<li><a href="http://stackoverflow.com/questions/7994266/deep-object-comparison-delphi/7995671#7995671" target="_blank">Streaming using OmniXML and comparing the output</a> (comparing only the relevant data)</li>
</ol>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/7005/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/7005/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/7005/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=7005&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/10/deep-object-comparison-delphi-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Allocating 4Gb+ of memory in x64 using Delphi XE2 Update 2: Unofficial fix for QC#100726 &#8230;</title>
		<link>http://wiert.me/2011/11/09/allocating-4gb-of-memory-in-x64-using-delphi-xe2-update-2-unofficial-fix-for-qc100726/</link>
		<comments>http://wiert.me/2011/11/09/allocating-4gb-of-memory-in-x64-using-delphi-xe2-update-2-unofficial-fix-for-qc100726/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 11:00:45 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Mobile Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6998</guid>
		<description><![CDATA[If you are creating x64 applications using Delphi XE2, have Update 2 installed, and are (potentially) allocating more than 4Gb of memory (QC report 100726), then you need the Unofficial fix for QC#100726, or use the latest version of FastMM (see below). If you use Delphi XE2 (original release) or Update 1, then you don&#8217;t [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6998&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you are creating x64 applications using Delphi XE2, have Update 2 installed, and are (potentially) allocating more than 4Gb of memory (<a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=100726" target="_blank">QC report 100726</a>), then you need the <a href="https://forums.embarcadero.com/thread.jspa?threadID=63581&amp;tstart=0">Unofficial fix for QC#100726</a>, or use the latest version of FastMM (see below).</p>
<p>If you use Delphi XE2 (original release) or Update 1, then you don&#8217;t have problems in this scenario.</p>
<p>Thanks to <a href="http://sourceforge.net/projects/fastmm/" target="_blank">FastMM</a> author <a href="https://forums.embarcadero.com/profile.jspa?userID=1665" target="_blank">Pierre le Riche</a> for providing this fix so quickly.</p>
<p>Note that the latest <a href="http://sourceforge.net/projects/fastmm/files/FastMM%204.x%20Stable%20Releases/" target="_blank">4.x release of FastMM</a> is now <a href="http://sourceforge.net/projects/fastmm/files/FastMM%204.x%20Stable%20Releases/FastMM%204.99/" target="_blank">FastMM 4.99</a> and contains the same fix.</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="https://forums.embarcadero.com/thread.jspa?threadID=63581&amp;tstart=0">Embarcadero Discussion Forums: Unofficial fix for QC#100726 &#8230;</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/mobile-development/'>Mobile Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6998/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6998/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6998/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6998&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/09/allocating-4gb-of-memory-in-x64-using-delphi-xe2-update-2-unofficial-fix-for-qc100726/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>EKON15 download materials on-line at bo.codeplex.com</title>
		<link>http://wiert.me/2011/11/03/ekon15-download-materials-on-line-at-bo-codeplex-com/</link>
		<comments>http://wiert.me/2011/11/03/ekon15-download-materials-on-line-at-bo-codeplex-com/#comments</comments>
		<pubDate>Thu, 03 Nov 2011 11:00:58 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[EKON]]></category>
		<category><![CDATA[Event]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6963</guid>
		<description><![CDATA[I uploaded the EKON15 conference download materials to http://bo.codeplex.com. The changeset you are after is http://bo.codeplex.com/SourceControl/changeset/changes/70872 &#160; It contains most of the materials for the Delphi Tage and the Delphi Live conferences too, though I will upload the missing pieces soon. &#8211;jeroen Filed under: Conferences, Delphi, Development, EKON, Event<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6963&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I uploaded the <a href="http://entwickler-konferenz.de/" target="_blank">EKON15 conference</a> download materials to <a href="http://bo.codeplex.com/" target="_blank">http://bo.codeplex.com</a>.</p>
<p>The changeset you are after is <a href="http://bo.codeplex.com/SourceControl/changeset/changes/70872" target="_blank">http://bo.codeplex.com/SourceControl/changeset/changes/70872</a></p>
<p>&nbsp;</p>
<p>It contains most of the materials for the Delphi Tage and the Delphi Live conferences too, though I will upload the missing pieces soon.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/event/conferences/'>Conferences</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/event/conferences/ekon/'>EKON</a>, <a href='http://wiert.me/category/event/'>Event</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6963/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6963/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6963/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6963&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/03/ekon15-download-materials-on-line-at-bo-codeplex-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>You need at least 5Gb free space for Update 2 for #Delphi XE2, C++Builder XE2 and RAD Studio XE2</title>
		<link>http://wiert.me/2011/11/02/you-need-at-least-5gb-free-space-for-update-2-for-delphi-xe2-cbuilder-xe2-and-rad-studio-xe2/</link>
		<comments>http://wiert.me/2011/11/02/you-need-at-least-5gb-free-space-for-update-2-for-delphi-xe2-cbuilder-xe2-and-rad-studio-xe2/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 11:00:42 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi XE2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6961</guid>
		<description><![CDATA[Yesterday, Update 2 for Delphi XE2 / C++ Builder XE2 / RAD Studio XE2 became available for download. A few notes from my experience upgrading from a full RAD Studio XE2 Update 1 install (from ISO): You need at least 5 Gb free disk space to install Update 2. The installer won&#8217;t warn you in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6961&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Yesterday, <a href="http://www.delphifeeds.com/go/s/85861" target="_blank">Update 2 for Delphi XE2 / C++ Builder XE2 / RAD Studio XE2 became available for download</a>.</p>
<p>A few notes from my experience upgrading from a full RAD Studio XE2 Update 1 install (from ISO):</p>
<ul>
<li>You need at least 5 Gb free disk space to install Update 2.<br />
The installer won&#8217;t warn you in advance: it will indicate it needs more disk space when it cannot update the first file that does not fit.<br />
In my case (VMware image of 40 Gb with 4 Gb free), that was not enough.</li>
<li>It will leave a 300 Mb directory at %temp%\radstudio_xe2_update2_download</li>
<li>Downloads are available from the altd http and ftpd ftp servers for registrered users at about 300 kilobyte per second each.<br />
Expect a total download time of at least:</p>
<ol>
<li>15 minutes for the <a href="http://cc.embarcadero.com/item/28597" target="_blank">300 Mb XE2 Update 2</a><a href="ftp://ftpd.embarcadero.com/download/radstudio/xe2/delphicbuilder_xe2_upd2_win.exe" target="_blank">,</a></li>
<li>90 minutes for the <a href="http://cc.embarcadero.com/item/28616" target="_blank">complete 2.5 Gb XE2 install ISO that includes Update 2</a><a href="ftp://ftpd.embarcadero.com/download/radstudio/xe2/delphicbuilder_xe2_4316_win_dl.iso" target="_blank">,</a></li>
<li>40 minutes for the <a href="http://cc.embarcadero.com/item/28613" target="_blank">800 Mb XE2 Help Update 1</a><a href="ftp://ftpd.embarcadero.com/download/radstudio/xe2/delphicbuilder_xe2_HelpUpdate1.zip" target="_blank">,</a></li>
<li>20 minutes for the <a href="http://cc.embarcadero.com/item/28614" target="_blank">350 Mb RADPHP XE2 Update 2</a><a href="ftp://ftpd.embarcadero.com/download/radstudio/xe2/delphicbuilder_xe2_HelpUpdate1.zip" target="_blank">.</a></li>
</ol>
</li>
<li>The Update 2 install will wait a very long time in the &#8220;Validating&#8221; phase. Just be patient, it will get there in the end.</li>
<li>Though the  Help Update 1 is a lot bigger download, you usually only install one language and then it needs around half a gigabyte.</li>
</ul>
<p>There are a <a href="http://edn.embarcadero.com/article/41750" target="_blank">ton of changes</a> (154 changes files in the C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\source directory tree alone) including some of the things I came across that now have been fixed:</p>
<ol>
<li>warnings about duplicate resources when including MidasLib</li>
<li>refreshing of BindingList</li>
<li>when the FireMonkey designer is visible, Alt-key combinations now work again</li>
</ol>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://www.delphifeeds.com/go/s/85861">Update 2 for Delphi XE2, C++Builder XE2 and RAD Studio XE2 now available &#8211; DelphiFeeds.com</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-xe2/'>Delphi XE2</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6961/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6961/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6961/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6961&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/02/you-need-at-least-5gb-free-space-for-update-2-for-delphi-xe2-cbuilder-xe2-and-rad-studio-xe2/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi: solution for &#8220;How can I find all the units in my Delphi app?&#8221; (via Stack Overflow)</title>
		<link>http://wiert.me/2011/11/01/delphi-solution-for-how-can-i-find-all-the-units-in-my-delphi-app-via-stack-overflow/</link>
		<comments>http://wiert.me/2011/11/01/delphi-solution-for-how-can-i-find-all-the-units-in-my-delphi-app-via-stack-overflow/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 05:00:12 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6494</guid>
		<description><![CDATA[Delphi Tricks (from Chris Hesik, see link below) to show which units are compiled into an app: Use the modules view, this will show you what units (and source files!) the debugger knows of for your modules. Use the &#8211;depends switch on the commandline: this will output a .d file listing all the .dcus and .dcps for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6494&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Delphi Tricks (from Chris Hesik, see link below) to show which units are compiled into an app:</p>
<ul>
<li>Use the modules view, this will show you what units (and source files!) the debugger knows of for your modules.</li>
<li>Use the <strong>&#8211;depends</strong> switch on the commandline: this will output a <strong>.d</strong> file listing all the <strong>.dcus</strong> and <strong>.dcps</strong> for your modules.</li>
</ul>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://stackoverflow.com/questions/731799/how-can-i-find-all-the-units-in-my-delphi-app/3154875#3154875">debugging &#8211; How can I find all the units in my Delphi app? &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6494/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6494&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/11/01/delphi-solution-for-how-can-i-find-all-the-units-in-my-delphi-app-via-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 Hands-On Workshop met better office &#8211; beperkt aantal plaatsen beschikbaar</title>
		<link>http://wiert.me/2011/10/25/delphi-xe2-hands-on-workshop-met-better-office-beperkt-aantal-plaatsen-beschikbaar/</link>
		<comments>http://wiert.me/2011/10/25/delphi-xe2-hands-on-workshop-met-better-office-beperkt-aantal-plaatsen-beschikbaar/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 05:00:40 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[PowerDay]]></category>
		<category><![CDATA[Seminar]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6896</guid>
		<description><![CDATA[Op dinsdag 6 en woensdag 7 december 2011, organiseren Barnsten en better office benelux een 2 daagse Delphi XE2 Workshop in Hoofddorp. Het aantal plaatsen is beperkt, aanmelden kan via de Barnsten.com site. Het doel van deze workshop is ervaren Delphi ontwikkelaars snel productief te laten werken met Delphi XE2. De workshop is modulair opgezet: [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6896&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Op dinsdag 6 en woensdag 7 december 2011, organiseren Barnsten en better office benelux een 2 daagse Delphi XE2 Workshop in Hoofddorp.</p>
<p>Het aantal plaatsen is beperkt, <a href="http://www.barnsten.com/nl/development-tools/delphi-xe2-training/delphi-xe2-training-better-office" target="_blank">aanmelden kan via de Barnsten.com site</a>.</p>
<p>Het doel van deze workshop is ervaren Delphi ontwikkelaars snel productief te laten werken met Delphi XE2. De workshop is modulair opgezet: inschrijving is per dag mogelijk.</p>
<p>De workshop sluit aan op <a href="http://www.barnsten.com/nl/development-tools/delphi-xe2-training/delphi-xe2-training-better-office" target="_blank">de workshop die vorige week door Barnsten en The Delphi Company is georganiseerd</a>: er zit nauwelijks overlap in de onderwerpen.</p>
<h1>Samenvatting</h1>
<p>Dag 1 heeft de focus op nieuwe features voor Windows gebruikers.</p>
<p>Dag 2 gaat compleet over cross platform FireMonkey (Windows, Mac en iOS: iPad/iPhone/iPod-touch). Neem hier je eigen</p>
<h1>Voorbereiding</h1>
<p>Nodig voor dag 1 en dag 2:</p>
<ul>
<li>Windows systeem met</li>
<li>InterBase developer: <a href="https://downloads.embarcadero.com/free/interbase" target="_blank">https://downloads.embarcadero.com/free/interbase</a></li>
<li>Delphi XE2 Enterprise of Delphi XE2 trial: <a href="https://downloads.embarcadero.com/free/rad_studio" target="_blank">https://downloads.embarcadero.com/free/rad_studio</a><br />
(een groot deel van het programma werkt met Delphi XE2 Professional, maar wellicht niet alles)</li>
</ul>
<p>Nodig voor dag 2:</p>
<ul>
<li>Mac systeem (FireMonkey heeft een fysieke Mac nodig vanwege de <a href="http://www.youtube.com/watch?v=ONuN8mFPOWQ&amp;feature=youtube_gdata" target="_blank">GPU ondersteuning</a>)<br />
met</li>
<li>InterBase developer: <a href="https://downloads.embarcadero.com/free/interbase" target="_blank">https://downloads.embarcadero.com/free/interbase</a></li>
<li>Platform Assistant server (zie installatie instructies hieronder)</li>
<li>FireMonkey iOS installatie (zie installatie instructies hieronder)</li>
</ul>
<h1>Programma</h1>
<p>In samenwerking met better-office organiseert Barnsten een Hands-On workshop voor de gevorderde Delphi<br />
ontwikkelaar. Het doel van deze workshop is u, als ervaren Delphi ontwikkelaar, snel productief te laten werken met<br />
Delphi XE2. De workshop is modulair opgezet zodat u zich per dag kunt inschrijven.<br />
De Hands-On Workshop vindt plaats op 7 en 8 december 2011 en wordt gehouden in Hoofddorp. Kijk voor de<br />
beschrijving onder het kopje Product info en voor de dagindeling onder het kopje Specificaties.</p>
<h2>Inhoud Dag 1: Introductie Delphi/RAD Studio XE2</h2>
<ul>
<li>Wat is nieuw in XE2</li>
<li>Migreren van oude projecten</li>
<li>Introductie x64: wat is nieuw, hoe zet je projecten over naar x64. Meer over de platformen en performance</li>
<li>VCL Styles: hoe werkt het, wat kun je er mee</li>
<li>Live Binding: wat zijn de voordelen / nadelen</li>
<li>Unit Scoping: voordelen / nadelen, backward compatibility</li>
<li>TZipFile ondersteuning</li>
<li>Conditional defines</li>
<li>FireMonkey: HD en 3D software ontwikkeling met FireMonkey</li>
<li>RAD Studio XE2 Roadmap</li>
<li>Installatie XE2 op Windows en Mac OS X</li>
</ul>
<h2>Dag 2: FireMonkey</h2>
<ul>
<li>Basis FireMonkey en de verschillen op de platformen Windows, OS X en iOS</li>
<li>FireMonkey op iOS: het gebruik van Xcode</li>
<li>Maken van een eenvoudige FireMonkey HD applicatie: basisprincipes, animations, effects</li>
<li>Maken van een eenvoudige FireMonkey 3D applicatie: basisprincipes, animations, effects en belichting</li>
<li>Beide applicaties van Windows naar Mac OS X omzetten</li>
<li>Debuggen op Mac OS X en iOS emulator</li>
<li>Gebruik van HD en 3D in 1 applicatie</li>
<li>Een iOS versie maken van beide applicaties</li>
<li>Fundamentele verschillen tussen mobile en desktop: hoe ga je daar in je UI mee om</li>
<li>XML, data en data binding in de FireMonkey applicaties: hoe maak je dit cross-platform</li>
<li>Hoe breng ik VCL applicaties naar FireMonkey</li>
<li>Windows: mixen van VCL en FireMonkey</li>
<li>Overzicht van interessante blogs, sites en artikelen</li>
</ul>
<h1>Installatie instructies</h1>
<h2>Installatie instructies op de Windows PC</h2>
<ol>
<li>Installeer RAD Studio XE2 en de on-line help (gebruik overal de default instellingen)</li>
<li>Installeer InterBase XE Developer edition</li>
</ol>
<h2>Installatie instructies op de Mac</h2>
<h3>Voor FireMonkey Mac OS X ontwikkeling</h3>
<ol>
<li>Kopieer het bestand <em>setup_paserver.zip</em> naar je Mac. Deze staat meestal in (X: je Windows drive):<br />
64-bits systeem: <em>X:\Program Files (x86)\Embarcadero\RAD Studio\9.0\PAServer</em><br />
32-bits systeem: <em>X:\Program Files\Embarcadero\RAD Studio\9.0\PAServer</em></li>
<li>Pak de file <em>setup_paserver.zip</em> uit op de Mac (je krijgt dan een bestand <em>setup_paserver</em>)</li>
<li>Run de <em>setup_paserver</em> op de Mac.</li>
<li>InterBase Developer edition:<br />
volg de <a href="http://docs.embarcadero.com/products/interbase/IBXEUpdate2/IBsetup.html#Install2007" target="_blank">algemene installatie instructies op de Embarcadero site</a>,<br />
gevolgd door de <a href="http://docs.embarcadero.com/products/interbase/IBXEUpdate2/IBsetup.html#macosx" target="_blank">specifieke Mac OS X instructies op de Embarcadero site</a>.</li>
</ol>
<h3>Voor Apple iOS (iPad, iPhone, iPod touch) ontwikkeling</h3>
<ol>
<li>Download en installeer Xcode 4 van de Apple site (je moet je eerst registreren) <a href="http://developer.apple.com/xcode/" target="_blank">http://developer.apple.com/xcode/</a></li>
<li>Kopieer de file <em>FireMonkey-iOS.dmg</em> naar je Mac; deze staat meestal (X: is je Windows drive) op:<br />
64-bits systeem: <em>X:\Program Files (x86)\Embarcadero\RAD Studio\9.0\FireMonkey-iOS</em><br />
32-bits systeem: <em>X:\Program Files\Embarcadero\RAD Studio\9.0\FireMonkey-iOS</em></li>
<li>De file <em>FireMonkey-iOS.dmg</em> is een disk image.<br />
Mount het DMG image op je Mac. Deze wordt dan geopend in <em>/Volumes/FireMonkey-iOS/</em> en er komen 2 vensters met de installers.</li>
<li>Installeer beide in deze volgorde:<br />
a. fpc-2.4.4.intel-macosx.pkg (het vertelt dat het in 2 minuten installeert; dat duurt meestal korter)<br />
b. FireMonkey-iOS-XE2.pkg (het vertelt dat het installeert in &#8220;less than a minute”, maar meestal duurt dit veel langer, houd rekening met een kwartier of langer)</li>
<li>Eject in de Mac Finder de DMG die je gemount hebt</li>
</ol>
<p>Zie ook deze twee online installatie instructies:</p>
<ul>
<li><a href="http://docwiki.embarcadero.com/RADStudio/en/Installing_and_Running_the_Platform_Assistant_on_the_Target_Platform" target="_blank">http://docwiki.embarcadero.com/RADStudio/en/Installing_and_Running_the_Platform_Assistant_on_the_Target_Platform</a></li>
<li><a href="http://www.itwriting.com/blog/4841-hands-on-with-delphi-xe2-for-apple-ios.html" target="_blank">http://www.itwriting.com/blog/4841-hands-on-with-delphi-xe2-for-apple-ios.html</a></li>
</ul>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.barnsten.com/nl/development-tools/delphi-xe2-training/delphi-xe2-training-better-office" target="_blank">Delphi XE2 Hands-On Workshop met better office &#8211; Barnsten.com</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/event/'>Event</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/event/powerday/'>PowerDay</a>, <a href='http://wiert.me/category/event/seminar/'>Seminar</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6896/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6896&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/25/delphi-xe2-hands-on-workshop-met-better-office-beperkt-aantal-plaatsen-beschikbaar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 installation instructions on Windows and Mac (#ekon15 conference)</title>
		<link>http://wiert.me/2011/10/24/delphi-xe2-installation-instructions-on-windows-and-mac-ekon15-conference/</link>
		<comments>http://wiert.me/2011/10/24/delphi-xe2-installation-instructions-on-windows-and-mac-ekon15-conference/#comments</comments>
		<pubDate>Mon, 24 Oct 2011 12:00:54 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6919</guid>
		<description><![CDATA[If you are attending the EKON 15 conference and want to prepare your laptops for some hands on experience, please follow the guidelines below. I&#8217;m looking forward meeting a lot of interesting people, and having a great conference! And if you are not attending, the below guidelines will help you get started doing cross platform [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6919&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you are attending the <a href="http://entwickler-konferenz.de/" target="_blank">EKON 15 conference</a> and want to prepare your laptops for some <a href="http://entwickler-konferenz.de/2011/workshops/" target="_blank">hands on experience</a>, please follow the guidelines below.</p>
<p>I&#8217;m looking forward meeting a lot of interesting people, and having a great conference!</p>
<p>And if you are not attending, the below guidelines will help you get started doing <a href="http://www.embarcadero.com/products/firemonkey" target="_blank">cross platform FireMonkey</a> development in Delphi <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span class="Apple-style-span" style="font-size:26px;font-weight:bold;">Installation instructions</span></p>
<h2>Installation instructions on the Windows PC</h2>
<ol>
<li>Install RAD Studio XE2 and the on-line help (use the default settings in all steps)</li>
<li>Install InterBase XE Developer edition</li>
</ol>
<h2>Installation instructions on the Mac</h2>
<h3>For FireMonkey Mac OS X development</h3>
<ol>
<li>Copy the file <em>setup_paserver.zip</em>to your Mac. Usually you can find it in here (X: is your Windows drive):64-bits system: <em>X:\Program Files (x86)\Embarcadero\RAD Studio\9.0\PAServer</em>32-bits system: <em>X:\Program Files\Embarcadero\RAD Studio\9.0\PAServer</em></li>
<li>Unpack the file <em>setup_paserver.zip</em> on your Mac (you will get the file <em>setup_paserver</em>)</li>
<li>Run the <em>setup_paserver</em> on the Mac.</li>
<li>InterBase Developer edition:follow the <a href="http://docs.embarcadero.com/products/interbase/IBXEUpdate2/IBsetup.html#Install2007" target="_blank">general Installation instructions on the Embarcadero site</a>,followed by the <a href="http://docs.embarcadero.com/products/interbase/IBXEUpdate2/IBsetup.html#macosx" target="_blank">speficif Mac OS X instructies on the Embarcadero site</a>.</li>
</ol>
<h3>For Apple iOS (iPad, iPhone, iPod touch) development</h3>
<ol>
<li>Download and Install Xcode 4 from the Apple site (you need to register for an account first) <a href="http://developer.apple.com/xcode/" target="_blank">http://developer.apple.com/xcode/</a></li>
<li>Copy the file <em>FireMonkey-iOS.dmg</em>to your Mac; Usually you can find it in here (X: is your Windows drive):64-bits system: <em>X:\Program Files (x86)\Embarcadero\RAD Studio\9.0\FireMonkey-iOS</em>32-bits system: <em>X:\Program Files\Embarcadero\RAD Studio\9.0\FireMonkey-iOS</em></li>
<li>The file <em>FireMonkey-iOS.dmg</em>is a Mac disk image.Mount the DMG image on your Mac. It will be openend in <em>/Volumes/FireMonkey-iOS/</em> and you will see 2 installers.</li>
<li>Install both in this order:a. fpc-2.4.4.intel-macosx.pkg (it tells you that it will take 2 minutes, usually it will take less time)b. FireMonkey-iOS-XE2.pkg (it tells you it installs in &#8220;less than a minute”, usually it takes much longer, and can take more than 15 minutes)</li>
<li>In the Mac Finder, Eject the mounted DMG</li>
</ol>
<p>See also these two online instructions:</p>
<ul>
<li><a href="http://docwiki.embarcadero.com/RADStudio/en/Installing_and_Running_the_Platform_Assistant_on_the_Target_Platform" target="_blank">http://docwiki.embarcadero.com/RADStudio/en/Installing_and_Running_the_Platform_Assistant_on_the_Target_Platform</a></li>
<li><a href="http://www.itwriting.com/blog/4841-hands-on-with-delphi-xe2-for-apple-ios.html" target="_blank">http://www.itwriting.com/blog/4841-hands-on-with-delphi-xe2-for-apple-ios.html</a></li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6919/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6919/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6919/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6919&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/24/delphi-xe2-installation-instructions-on-windows-and-mac-ekon15-conference/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>SVN 1.7, TortoiseSVN and CollabNet 2.1.0 released earlier this week</title>
		<link>http://wiert.me/2011/10/14/svn-1-7-tortoisesvn-and-collabnet-2-1-0-released-earlier-this-week/</link>
		<comments>http://wiert.me/2011/10/14/svn-1-7-tortoisesvn-and-collabnet-2-1-0-released-earlier-this-week/#comments</comments>
		<pubDate>Fri, 14 Oct 2011 11:00:54 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Source Code Management]]></category>
		<category><![CDATA[Subversion/SVN]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6861</guid>
		<description><![CDATA[Right after the Subversion SVN 1.7 release earlier this week, 3rd party providers announced new versions of their products too. These are the updates of the ones I use most often: Tortoise SVN 1.7 CollabNet Subversion Edge 2.1.0 Two major improvements for me: Improved meta data (read: only one .svn directory in the root of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6861&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Right after the <a href="http://subversion.apache.org/news.html#news-20111011" target="_blank">Subversion SVN 1.7 release earlier this week</a>, 3rd party providers announced new versions of their products too.</p>
<p>These are the updates of the ones I use most often:</p>
<ul>
<li><a href="http://tortoisesvn.net/tsvn_1.7_releasenotes.html" target="_blank">Tortoise SVN 1.7</a></li>
<li><a href="https://ctf.open.collab.net/sf/wiki/do/viewPage/projects.svnedge/wiki/Release_2.1.0" target="_blank">CollabNet Subversion Edge 2.1.0</a></li>
</ul>
<p>Two major improvements for me:</p>
<ol>
<li><a href="http://subversion.apache.org/docs/release-notes/1.7.html#wc-ng" target="_blank">Improved meta data (read: only one .svn directory in the root of a working copy)</a></li>
<li><a href="http://subversion.apache.org/docs/release-notes/1.7.html#httpv2" target="_blank">Faster HTTP speed</a></li>
</ol>
<p>Please also read <a href="https://plus.google.com/107811538224738992137/posts" target="_blank">Uwe Schuster</a>&#8216;s (the guy that <a href="http://www.bitcommander.de/blog/index.php/2010/10/13/verins-intro/" target="_blank">implemented the version control integration for SVN and Git in the Delphi IDE</a>) blog post on <a href="http://www.delphifeeds.com/go/s/81175" target="_blank">a few things you need to watch when upgrading to Tortoise SVN 1.7</a>.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/source-code-management/'>Source Code Management</a>, <a href='http://wiert.me/category/development/source-code-management/subversionsvn/'>Subversion/SVN</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6861/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6861/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6861/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6861&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/14/svn-1-7-tortoisesvn-and-collabnet-2-1-0-released-earlier-this-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Impersonation on the iSeries: Changing Profile User</title>
		<link>http://wiert.me/2011/10/12/impersonation-on-the-iseries-changing-profile-user/</link>
		<comments>http://wiert.me/2011/10/12/impersonation-on-the-iseries-changing-profile-user/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 05:00:14 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iSeries]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6260</guid>
		<description><![CDATA[When running on Windows, changing the current user is called impersionation. There are various ways to do this in Windows, including WindowsIdentity.Impersonate on .NET (e.g. when using C#, VB.et net or Delphi Prism) which requires P/Invoke of LogonUser, CloseHandle and sometimes DuplicateToken as mentioned by Espo in this StackOverflow answer on .NET The functions ImpersonateLoggedOnUser and RevertToSelf the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6260&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When running on Windows, changing the current user is called impersionation.</p>
<p>There are various ways to do this in Windows, including</p>
<ul>
<li><a href="http://msdn.microsoft.com/en-us/library/system.security.principal.windowsidentity.impersonate.aspx" target="_blank">WindowsIdentity.Impersonate</a> on .NET (e.g. when using C#, VB.et net or Delphi Prism) which requires <a href="http://pinvoke.net/" target="_blank">P/Invoke</a> of <a href="http://msdn.microsoft.com/en-us/library/aa378184(v=vs.85).aspx" target="_blank">LogonUser</a>, <a href="http://msdn.microsoft.com/en-us/library/ms724211(v=vs.85).aspx" target="_blank">CloseHandle</a> and sometimes <a href="http://msdn.microsoft.com/en-us/library/aa446616(v=vs.85).aspx" target="_blank">DuplicateToken</a> as <a href="http://stackoverflow.com/questions/48567/change-user-for-running-windows-forms-program/48571#48571" target="_blank">mentioned by Espo in this StackOverflow answer on .NET</a></li>
<li>The functions <a href="http://msdn.microsoft.com/en-us/library/aa378612(v=vs.85).aspx" target="_blank">ImpersonateLoggedOnUser</a> and <a href="http://msdn.microsoft.com/en-us/library/aa379317(v=vs.85).aspx" target="_blank">RevertToSelf</a> the in the Windows API (e.g. when using Delphi or C++) also requiring  <a href="http://msdn.microsoft.com/en-us/library/aa378184(v=vs.85).aspx" target="_blank">LogonUser</a> and <a href="http://msdn.microsoft.com/en-us/library/ms724211(v=vs.85).aspx" target="_blank">CloseHandle</a> as <a href="http://www.delphi3000.com/articles/article_2406.asp?SK=" target="_blank">mentioned by Chris Baldwin on Delphi3000.com</a>.</li>
</ul>
<p>On the iSeries, there is only one way, as everything goes through the same API: use <a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=%2Fapis%2FQSYGETPH.htm" target="_blank">QSYGETPH (Get Profile Handle)</a> to verify a username/password combination and obtain a handle to the authentication token, then use <a href="http://publib.boulder.ibm.com/iseries/v5r2/ic2928/index.htm?info/apis/QWTSETP.htm" target="_blank">QWTSETP (Set Profile Handle)</a> to change the user currently signed on, as for instance <a href="http://as400blog.blogspot.com/2009/05/free-i5-as400-rpg-utility-change.html" target="_blank">mentioned by Colin Williams</a> directing to the <a href="http://www.freerpgtools.com/downloads/chgcurusr.html" target="_blank">CHGCURUSR tool on FreeRpgTools.com</a> and an <a href="http://www.itjungle.com/mpo/mpo071703-story02.html" target="_blank">article on Swapping AS/400 User Profiles by Shannon O&#8217;Donnel</a> that <a href="http://www.itjungle.com/mpo/mpo071703-Shannon-swapusrprf.txt" target="_blank">comes with source code</a>.</p>
<p>On the iSeries, when you are done, you should use <a href="http://www.google.com/search?aq=f&amp;sourceid=chrome&amp;ie=UTF-8&amp;q=QSYRLSPH" target="_blank">QSYRLSPH (Release Profile Handle)</a> when done impersonating, and you need to <a href="http://archive.midrange.com/midrange-l/200605/msg00257.html" target="_blank">get the handle from the original user profile if you want to return to it</a>.</p>
<p>The IBM documentation contains a <a href="http://publib.boulder.ibm.com/infocenter/eserver/v5r3/ic2924/index.htm?info/apis/apiexushand.htm" target="_blank">small sample with QSYGETPH, QWTSETP and QSYSRLSPH</a> that sets and restores the profile handle (edit 20120214: it got moved to <a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Fapis%2Fapiexushand.htm">http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Fapis%2Fapiexushand.htm</a>)</p>
<p>Note that on both Windows ans iSeries, impersonation within a process/thread will make it run in the new context, but the process still keeps the identity of the user that started the process.</p>
<p>If you want to change that, then on both you need to start a new process from the impersonated thread.</p>
<p>In Windows, you can combine the impersionation and the creation of a new process by using the <a href="http://msdn.microsoft.com/en-us/library/ms682431" target="_blank">CreateProcessWithLogonW function</a> (as <a href="http://blogs.msdn.com/b/oldnewthing/archive/2004/11/29/271551.aspx" target="_blank">mentioned at the Old New Thing by Raymond Chan</a>). I&#8217;ve yet to find an equivalent on the iSeries.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/iseries/'>iSeries</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6260/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6260&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/12/impersonation-on-the-iseries-changing-profile-user/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>EKON 15 conference news and discount (German text at the end of the blog post): Cary Jensen presents the keynote @caryjensen #ekon</title>
		<link>http://wiert.me/2011/10/11/ekon-15-conference-news-and-discount-german-text-at-the-end-of-the-blog-post-cary-jensen-presents-the-keynote-caryjensen-ekon/</link>
		<comments>http://wiert.me/2011/10/11/ekon-15-conference-news-and-discount-german-text-at-the-end-of-the-blog-post-cary-jensen-presents-the-keynote-caryjensen-ekon/#comments</comments>
		<pubDate>Tue, 11 Oct 2011 11:00:31 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[About]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[EKON]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Travel]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6849</guid>
		<description><![CDATA[EKON 15 &#8211; first day has many English sessions From 26 till 28 of October, I&#8217;ll be speaking at the 15th EKON conference at the Renaissance Hotel in Düsseldorf, Germany. I just sat next to the conference organizer, and he proudly announced that well known and long time Delphi guru Cary Jensen will be presenting [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6849&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>EKON 15 &#8211; first day has many English sessions<a href="http://entwickler.com/konferenzen/planer/entwicklerkonferenz2011_timetable.html"><img class="alignright" title="EKON 15" src="http://it-republik.de/konferenzen/entwicklerkonferenz2011/img/content/ttbutton.jpg" alt="" width="255" height="217" /></a></strong></p>
<p>From 26 till 28 of October, I&#8217;ll be speaking at the <a href="http://entwickler-konferenz.de/2011/" target="_blank">15th EKON conference</a> at the <a href="http://www.renaissanceduesseldorf.de" target="_blank">Renaissance Hotel in Düsseldorf, Germany</a>.</p>
<p>I just sat next to the conference organizer, and he proudly announced that well known and long time Delphi guru <a href="http://www.jensendatasystems.com/aboutcj.html" target="_blank">Cary Jensen</a> will be presenting the <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19972" target="_blank">keynote on the evolution of Delphi from Delphi 1 to XE2</a>.</p>
<p>I still have the disks marked <a href="http://delphi.wikia.com/wiki/Delphi_Release_Dates" target="_blank">&#8220;Wasabi&#8221; and &#8220;Mango&#8221;</a> from the early 90s (and funny that Microsoft is using the same name for a 7.5 product, where Delphi 1 was a real revolution).</p>
<p>Next to the German sessions, there will be English sessions as well: Cary also does his other sessions that day (on <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19926" target="_blank">cross platform development</a>, <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19951" target="_blank">windows services</a>, and <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19956" target="_blank">RESTful webservices</a>).</p>
<p>Being a German conference, most of the other sessions will be in German, but it is good that the English ones are all in one day: you get a <a href="https://www.entwickler.com/ssl/formtool/index.php?id=191&amp;lang=de" target="_blank">one-day visit to conference</a> as a non-German speaker, get a discount and visit the beautiful city of Dusseldorf (especially the <a href="http://wikitravel.org/en/Dusseldorf#See" target="_blank">Altstadt</a> is recommended).</p>
<p><a href="mailto:jeroen.pluimers.com+ekon15discount@gmail.com" target="_blank">Contact me for more information on discounts</a>: there are both discounts for the English day and the full the whole conference.</p>
<p>On the <a href="http://entwickler-konferenz.de/2011" target="_blank">EKON 15 site</a> there is a nice <a href="http://entwickler.com/konferenzen/planer/entwicklerkonferenz2011_timetable.html" target="_blank">conference planner</a> and <a href="http://entwickler-konferenz.de/2011/sessions/" target="_blank">session overview</a>.</p>
<p>Last but not least, on friday after the conference, <a href="http://entwickler-konferenz.de/2011/speaker/#4852" target="_blank">Edwin van der Kraan</a> and I will present a <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19944" target="_blank">full day Delphi XE2 workshop</a> covering x64, new VCL and of course FireMonkey cross platform development (so bring your Mac and iOS devices with you!).</p>
<p><strong>15. EKON Konferenz &#8211; Delphi XE2 und mehr&#8230;</strong></p>
<p>Vom 26. bis zum 28. Oktober findet die <a href="http://entwickler-konferenz.de/2011/" target="_blank">15. Entwickler Konferenz</a> (EKON) im <a href="http://www.renaissanceduesseldorf.de" target="_blank">Renaissance Hotel in Düsseldorf</a> statt. Ich werde als Speaker ebenfalls vor Ort sein.</p>
<p>Als ich gerade mit dem Organisator der Konferenz zusammen saß, verkündete er mir stolz, dass <a href="http://www.jensendatasystems.com/aboutcj.html" target="_blank">Cary Jensen</a>, bekannter und langjähriger Delphi-Guru, auf der EKON 15 eine <a href="http://entwickler-konferenz.de/2011/keynote/" target="_blank">Keynote zu Delphis Evolution von Delphi 1 zu XE2</a> halten wird.</p>
<p>Ich bin immer noch im Besitz von Disketten aus den frühen 90er Jahren, die mit <a href="http://delphi.wikia.com/wiki/Delphi_Release_Dates" target="_blank">„Wasabi“ und „Mango“</a> beschriftet sind (witzig dabei ist, dass Microsoft den gleichen Namen für ein 7.5-Produkt nutzt, während es bei Delphi 1.0 eine richtige Revolution gab).</p>
<p>Neben den deutschen Sessions werden auf der EKON auch Sessions auf English angeboten: Cary wird unter anderem auch über <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19926" target="_blank">Cross-Plattform-Entwicklung</a>, <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19951" target="_blank">Windows Services</a> und <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19956" target="_blank">RESTful Web Services</a> sprechen.</p>
<p>Zwar werden die meisten Sessions auf Deutsch gehalten, jedoch gibt es diesmal eine Besonderheit bei den englischen Sessions: Diese finden an einem Tag statt!<br />
Somit können auch die Nicht-Deutschsprachigen für ermäßigten Eintritt an den Sessions auf Englisch teilnehmen und ganz nebenbei die schöne Innenstadt Düsseldorfs erkunden<br />
(besonders die <a href="http://wikitravel.org/en/Dusseldorf#See" target="_blank">Altstadt</a> ist sehr empfehlenswert).</p>
<p>Zu guter Letzt präsentieren <a href="http://entwickler-konferenz.de/2011/speaker/#4852" target="_blank">Edwin van der Kraan</a> und ich am Freitag einen <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=entwicklerkonferenz2011&amp;id=19944" target="_blank">ganztägigen XE2 Power Workshop</a> zu x64, New VCL und natürlich zur FireMonkey Cross-Plattform-Entwicklung (bringen Sie also Ihre Macs und iOS-Geräte mit!).</p>
<p>Bei weiteren Fragen, Interesse und Infos über die Ermäßigungen können Sie mich gerne <a href="mailto:jeroen.pluimers.com+ekon15discount@gmail.com" target="_blank">kontaktieren</a> (Ermäßigte Preise gibt es sowohl für den English-Day als auch für die Gesamtkonferenz). Auf der <a href="http://entwickler-konferenz.de" target="_blank">Website</a> finden Sie eine übersichtlichen <a href="http://entwickler.com/konferenzen/planer/entwicklerkonferenz2011_timetable.html" target="_blank">Zeitplaner</a>, die Sessions im <a href="http://entwickler-konferenz.de/2011/sessions/" target="_blank">Überblick</a> und alle weiter Informationen zur Entwickler Konferenz.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/about/'>About</a>, <a href='http://wiert.me/category/event/conferences/'>Conferences</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/event/conferences/ekon/'>EKON</a>, <a href='http://wiert.me/category/event/'>Event</a>, <a href='http://wiert.me/category/about/personal/'>Personal</a>, <a href='http://wiert.me/category/about/personal/travel-personal-about/'>Travel</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6849/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6849/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6849/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6849&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/11/ekon-15-conference-news-and-discount-german-text-at-the-end-of-the-blog-post-cary-jensen-presents-the-keynote-caryjensen-ekon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://it-republik.de/konferenzen/entwicklerkonferenz2011/img/content/ttbutton.jpg" medium="image">
			<media:title type="html">EKON 15</media:title>
		</media:content>
	</item>
		<item>
		<title>Registry Search-Replace tools &#8211; correcting the havoc after a data migration</title>
		<link>http://wiert.me/2011/10/07/registry-search-replace-tools/</link>
		<comments>http://wiert.me/2011/10/07/registry-search-replace-tools/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 05:00:40 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6246</guid>
		<description><![CDATA[A while ago, I found myself in the situation where at a corporate client the user profiles had moved on the LAN. Very understandable: it was one of the migrations towards DFS. They notified this in advance, so I made backups of everything (home drive and user profile) just to make sure. The move indeed [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6246&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A while ago, I found myself in the situation where at a corporate client the user profiles had moved on the LAN. Very understandable: it was one of the migrations towards <a href="http://en.wikipedia.org/wiki/Distributed_File_System_(Microsoft)" target="_blank">DFS</a>. They notified this in advance, so I made backups of everything (home drive and user profile) just to make sure.</p>
<p>The move indeed caused all sorts of havoc, because the data was moved, but the registry was only slightly modified.</p>
<p>Some of the errors I got were like these:</p>
<pre>[Internet Explorer - Search Provider Default]
A program on your computer has corrupted your default search provider setting for Internet Explorer.

Internet Explorer has reset this setting to your original search provider, Live Search (search.live.com).

Internet Explorer will now open Search Settings, where you can change this setting or install more search providers.
[OK]</pre>
<p>and</p>
<pre>[Desktop]
\\old-server\old-share\user-id\Desktop refers to a location that is unavailable. It could be on a hard drive on this computer, or on a network. Check to make sure that the disk is properly inserted, or that you are connected to the Internet or your network, and then try again. If it still cannot be located, the information might have been moved to a different location.
[OK]</pre>
<p>Below some of the ramblings on what I did to get everything working again, including registry searches when you are not allowed to run RegEdit, searching through text, and the places in the registry that had to change.<span id="more-6246"></span></p>
<p>Apart from changing network shares, I needed to do a global search replace in the HKLU part of the registry of this form:</p>
<ul>
<li>From: <span style="text-decoration:underline;">\\old-server\userdata-share\user-id\Application Data</span></li>
<li>To: <span style="text-decoration:underline;">\\new-server\dfs-share\userdata-path\user-id\Application Data</span></li>
</ul>
<ul>
<li>From: \\old-server\userdata-share\user-id\Desktop</li>
<li>To: \\new-server\dfs-share\userdata-path\user-id\Desktop</li>
</ul>
<ul>
<li>From: \\old-server\userdata-share\user-id\Home</li>
<li>To: \\new-server\dfs-share\userdata-path\user-id\Home</li>
</ul>
<p>The above paths were easy to find as they were also used outside the registry.</p>
<ul>
<li>From: \\old-server\profile-share\user-id</li>
<li>To: \\new-server\dfs-share\profile-path\user-id</li>
</ul>
<p>This path was hard to find, as the path to the roaming user profile storage was only available in the registry under the <em>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\SidXXX</em> in the key <em>CentralProfile</em>. where <em>SidXXX</em> is the <a href="http://www.msfn.org/board/topic/43597-how-to-get-a-users-sid/" target="_blank">SID of the user</a>.</p>
<p>You can get that SID by performing this <a href="http://technet.microsoft.com/en-us/sysinternals/bb897417" target="_blank">PSGETSID command</a> (from <a href="http://technet.microsoft.com/en-us/sysinternals/default" target="_blank">SysInternals</a>) on the console:</p>
<p><code>psgetsid %USERNAME%</code></p>
<p>It took a while to find that out, as <a href="http://support.microsoft.com/kb/141377" target="_blank">RegEdit.exe and RegEdt32.exe</a> are not allowed here in UI mode, nor is installing new software.<br />
Luckily, the <a href="http://www.robvanderwoude.com/regedit.php" target="_blank">command-line mode of RegEdit.exe</a> and the <a href="http://www.petri.co.il/reg_command_in_windows_xp.htm" target="_blank">REG.EXE commandline registry tool</a> are allowed, so I could export the registry and perform some search operations.</p>
<p>Editing the Registry that way is tough, so I looked for a downloadable, standalone running Registry search-replace tool and found some in the <a href="http://superuser.com/" target="_blank">SuperUser.com</a> question on <a href="http://superuser.com/questions/174942/registry-search-replace-tool" target="_blank">Registry Search &amp; Replace Tool</a>.</p>
<p>The <a href="http://www.nirsoft.net/utils/regscanner.html" target="_blank">NirSoft RegScanner tool</a> helped me find the registry keys, but it didn&#8217;t find all of them.<br />
For instance, it didn&#8217;t find the new user-data share in the <a href="http://www.insidetheregistry.com/regdatabase/browse.aspx?keyid=31" target="_blank">HKEY_CURRENT_USER\Volatile Environment</a> , nor the Profilelist.</p>
<p>I started using this tiny batch-file using the <a href="http://technet.microsoft.com/en-us/library/cc742017(WS.10).aspx" target="_blank">REG EXPORT</a> command to export all the registry roots, then did a search using notepad through them for the old profile and userdata shares.</p>
<p><pre class="brush: plain;">
@echo off
  if &quot;%1&quot;==&quot;&quot; goto :help
:list
  for %%r in (HKLM, HKCU, HKCR, HKU, HKCC) do REG EXPORT %%r %%r.%1
  goto :end
:help
  echo Syntax: %0 basefilename
  echo This will export the registry to HKLM.basefilename, HKCU.basefilename, HKCR.basefilename, HKU.basefilename and HKCC.basefilename
:end
</pre></p>
<p>Note that the output of REG is using <a href="http://en.wikipedia.org/wiki/UTF-16/UCS-2" target="_blank">UTF-16</a> as text format (the <a href="http://support.microsoft.com/kb/256986" target="_blank">Registry can store data</a> as <a href="http://en.wikipedia.org/wiki/Unicode" target="_blank">Unicode</a>), which many text tools don&#8217;t support. Since the <a href="http://www.google.com/search?q=utf162utf8+win32" target="_blank">utf162utf8 win32</a> search didn&#8217;t get many results, I used the <a href="http://wiert.wordpress.com/2009/04/23/netc-converting-utf8-to-ascii-yes-you-can-loose-information-with-this-using-systemtextencoding/" target="_blank">UTF82ASCII tool I wrote long ago</a> to a UTF162UTF8 tool and published the backlog of  <a href="http://bo.codeplex.com/SourceControl/changeset/changes/68959" target="_blank">C# text encoding sample sources</a> (requires .NET 2.0 and higher) and <a href="http://bo.codeplex.com/SourceControl/changeset/changes/68960" target="_blank">Delphi text encoding sample sources</a> (requires Delphi 2009 or higher).</p>
<p>In the end, none of the search tools, nor the exports would by default find the ProfileList, except for Nirsoft&#8217;s RegScanner (search only) and the <a href="http://resplendence.com/downloads" target="_blank">Registrar Registry Manager by Daniel Terell</a> (search and edit). Registrar Registry Manager &#8211; after installing on Windows 7 &#8211; can be just copied over on a new machine by copying the <em>C:\Program Files\Registrar Registry Manager</em> directory.</p>
<p>I could persuade REG EXPORT to do it by manually adding the full path &#8220; <em>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList</em>&#8221; on the command-line.</p>
<p>It means that most of the search tools barf one way or the other without warning and are therefore unreliable.</p>
<p>Learning all this, I modified a lot of registry keys to get the system working again; these were the more common ones:</p>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\Office\Common</li>
<li>Name: FontBmpCache</li>
<li>Old Value: \\old-server\userdata-share\user-id\Application Data\Microsoft\Office\fbc1FB.tmp</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Application Data\Microsoft\Office\fbc1FB.tmp</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\6.0</li>
<li>Name: ProfilePath</li>
<li>Old Value: \\old-server\userdata-share\user-id\Application Data\Microsoft\Visual Studio\</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Application Data\Microsoft\Visual Studio\</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders</li>
<li>Name: AppData</li>
<li>Old Value: \\old-server\userdata-share\user-id\Application Data</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Application Data</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders</li>
<li>Name: Desktop</li>
<li>Old Value: \\old-server\userdata-share\user-id\Desktop</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Desktop</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders</li>
<li>Name: Personal</li>
<li>Old Value: \\old-server\userdata-share\user-id\Home\My Documents\My Pictures</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Home\My Documents\My Pictures</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders</li>
<li>Name: My Pictures</li>
<li>Old Value: \\old-server\userdata-share\user-id\Home\My Documents</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Home\My Documents</li>
</ul>
<ul>
<li>Key: HKEY_CURRENT_USER\Volatile Environment</li>
<li>Name: APPDATA</li>
<li>Old Value: \\old-server\userdata-share\user-id\Application Data</li>
<li>New Value: \\new-server\dfs-share\userdata-path\user-id\Application Data</li>
</ul>
<p><strong>Postface:</strong></p>
<p>Still some of the software doesn&#8217;t work, all of them storing their configuration in binary data, not in the registry.</p>
<p>The above exercise shows you that a transition can be painful, but still doable because of the power that the registry has.</p>
<p>I wish more applications would use it&#8230;</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6246/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6246&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/07/registry-search-replace-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>When you are bitten by normally having the luxury of a current development environment</title>
		<link>http://wiert.me/2011/10/06/when-you-are-bitten-by-normally-having-the-luxury-of-a-current-development-environment/</link>
		<comments>http://wiert.me/2011/10/06/when-you-are-bitten-by-normally-having-the-luxury-of-a-current-development-environment/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 05:00:57 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6323</guid>
		<description><![CDATA[Sometimes you are at clients that don&#8217;t fully appreciate the luxury of keeping their development environment current. This case a client still using Delphi 2006, where I promptly ran into a compiler error that was solved 5 years ago: a &#8220;F2084 Internal Error: C11919&#8243; at the end of the method. The cause is that the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6323&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sometimes you are at clients that don&#8217;t fully appreciate the luxury of keeping their development environment current.</p>
<p>This case a client still using Delphi 2006, where I promptly ran into a compiler error that was solved 5 years ago: a &#8220;F2084 Internal Error: C11919&#8243; at the end of the method.</p>
<p><pre class="brush: delphi;">
begin
  if RMQResult.Create(CompCode, Reason).IsOK then
//...
end; // [Pascal Fatal Error] MQObjects.pas(668): F2084 Internal Error: C11919
</pre></p>
<p>The cause is that the compiler barfs at calling a method on a freshly created record.<br />
The function result is an intermediate, which is not handled correctly (fixed in Delphi 2007).</p>
<p>This is not only for record intermediates: <a href="http://borland.newsgroups.archived.at/public.delphi.rtl.win32/200609/0609291426.html" target="_blank">reusing an intermediate like the result of Pred()</a> will crash the compiler in Delphi 2006.</p>
<p>The workaround is introducing a real variable.<br />
This works:</p>
<p><pre class="brush: delphi;">
var
  MQResult: RMQResult;
begin
  MQResult := RMQResult.Create(CompCode, Reason);
  if MQResult.IsOK then
//...
end; // compiles fine
</pre></p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6323/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6323/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6323/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6323&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/06/when-you-are-bitten-by-normally-having-the-luxury-of-a-current-development-environment/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>CRC32 Calculators in Delphi and .NET</title>
		<link>http://wiert.me/2011/10/05/crc32-calculators-in-delphi-and-net/</link>
		<comments>http://wiert.me/2011/10/05/crc32-calculators-in-delphi-and-net/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 05:00:27 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6023</guid>
		<description><![CDATA[For a couple of projects, I needed to calculate CRC32 hashes (they same CRC that for instance is used in ZIP files). A few of the projects used C#, others used Delphi, so here are a few references: The Delphi Encryption Compendium at Google Code works from Delphi 5 through the current Delphi version Delphi GUI [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6023&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>For a couple of projects, I needed to calculate CRC32 hashes (they same CRC that for instance is used in ZIP files).</p>
<p>A few of the projects used C#, others used Delphi, so here are a few references:</p>
<ul>
<li><a href="http://code.google.com/p/delphidec/" target="_blank">The Delphi Encryption Compendium at Google Code</a> works from Delphi 5 through the current Delphi version</li>
<li><a href="http://www34.brinkster.com/dizzyk/crc32.asp" target="_blank">Delphi GUI and command-line based CRC32 calculation</a> (including source code and EXEs) using this <a href="http://www34.brinkster.com/dizzyk/source/crc32.pas.txt" target="_blank">table-based CRC32 implementation</a></li>
<li>C# implementation of (very plain, not table based, so potentially slow) <a href="http://www.sanity-free.org/12/crc32_implementation_in_csharp.html" target="_blank">CRC32</a>, <a href="http://www.sanity-free.org/133/crc_16_ccitt_in_csharp.html" target="_blank">CRC16</a>, <a href="http://www.sanity-free.org/134/standard_crc_16_in_csharp.html" target="_blank">CRC16-CCIT</a> and <a href="http://www.sanity-free.org/146/crc8_implementation_in_csharp.html" target="_blank">CRC8</a>.</li>
<li>The famous <a href="http://sharpdevelop.net/OpenSource/SharpZipLib/" target="_blank">.NET SharpZipLib</a> implementation also covers crc32.</li>
</ul>
<p>FileFormat.info has a good <a href="http://www.fileformat.info/tool/hash.htm" target="_blank">on-line hasher</a> (that does CRC32, md5 and a bunch of others) accepting both strings, hext bytes and files.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www34.brinkster.com/dizzyk/crc32.asp">CRC32 Calculator</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6023/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6023/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6023/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6023&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/05/crc32-calculators-in-delphi-and-net/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>I won&#8217;t make it to CodeRage this year, the Diving instructor and a diving buddy of my retarded brother just died in a diving accident: counselling to do</title>
		<link>http://wiert.me/2011/10/03/i-wont-make-it-to-coderage-this-year-the-diving-instructor-and-a-diving-buddy-of-my-retarded-brother-just-died-in-a-diving-accident-counselling-to-do/</link>
		<comments>http://wiert.me/2011/10/03/i-wont-make-it-to-coderage-this-year-the-diving-instructor-and-a-diving-buddy-of-my-retarded-brother-just-died-in-a-diving-accident-counselling-to-do/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 19:51:35 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[About]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6751</guid>
		<description><![CDATA[I&#8217;m really sorry to announce it, but I&#8217;m still shocked, while in the mean time providing counselling to my brother, providing the newspaper interviewer with background information on how diving with handicapped/retarded people works, and helping hands where I can. It means I won&#8217;t make it to CodeRage this year. With pain in my heart, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6751&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m really sorry to announce it, but I&#8217;m still shocked, while in the mean time providing counselling to my brother, providing the newspaper interviewer with background information on how diving with handicapped/retarded people works, and helping hands where I can.</p>
<p>It means I won&#8217;t make it to CodeRage this year. With pain in my heart, but even more pain for Fred Snijder (diving instructor) and Nico Laan (diving buddy), their families, friends, pupils, and co-divers. Those guys will be dearly missed, and leave an inexplicably large hole behind (no pun intended).</p>
<p>Just read, and shiver imagining that two of the most well trained and precautionary diving people I know just, well, died on October, 1st.</p>
<p>I&#8217;m in an utterly confused state of mind: sad, confused, supportive, etc.</p>
<blockquote><p><em>Germany</em></p>
<p><strong>2 Dutch divers died in German lake</strong></p>
<p>The bodies of 2 divers were recovered on Sunday at a depth of 50 metres in the Kreidesee in Hemmoor, 30 miles southeast of Cuxhaven, following a diving accident.</p>
<p>The Delta Duikteam of Alkmaar had a group of 6 people diving at the 60-metre deep lake, 2 surfaced without problems, 2 others required to make an emergency ascent but they are not listed in life-threatening condition. Of the 2 missing divers whose bodies were found yesterday, 1 was an experienced instructor. <em>3rd October 2011</em></p></blockquote>
<p>&#8211;jeroen, confused.</p>
<p>via: <a href="http://www.safetynews.co.uk/">www.safetynews.co.uk</a></p>
<p><a href="http://www.fundiving.nl/" target="_blank">Fundiving</a>    <a href="http://www.wannadive.net/spot/Europe/Germany/Bremen_Niedersachsen/Kreidesee_Hemmoor/" target="_blank">Kreidesee</a>    <a href="http://www.stichtingdezevensprong.nl/" target="_blank">Zevensprong</a>    <a href="http://www.deltaduikteam.nl/jmldd/index.php" target="_blank">Delta Duikteam Alkmaar</a>    <a href="http://www.ad.nl/" target="_blank">AD newspaper</a>    <a href="his wife of 13 years" target="_blank">CodeRage</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<br />Filed under: <a href='http://wiert.me/category/about/'>About</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/about/personal/'>Personal</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6751/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6751&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/10/03/i-wont-make-it-to-coderage-this-year-the-diving-instructor-and-a-diving-buddy-of-my-retarded-brother-just-died-in-a-diving-accident-counselling-to-do/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>EditorLineEnds.ttr &#8211; what is it?</title>
		<link>http://wiert.me/2011/09/29/editorlineends-ttr-what-is-it/</link>
		<comments>http://wiert.me/2011/09/29/editorlineends-ttr-what-is-it/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 05:00:06 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Font]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6149</guid>
		<description><![CDATA[Sometimes when you start Delphi multiple times, you get an error message similar to this: [Error] Cannot create file "C:\DOCUME~1\username\LOCALS~1\Temp\EditorLineEnds.ttr". The process cannot access the file because it is being used by another process. [OK] Since there are are a few QC entries on the EditorLineEnds.ttr file: what is it? In fact, there are two [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6149&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sometimes when you start Delphi multiple times, you get an error message similar to this:<br />
<code>[Error]<br />
Cannot create file "C:\DOCUME~1\username\LOCALS~1\Temp\EditorLineEnds.ttr". The process cannot access the file because it is being used by another process.<br />
[OK]</code></p>
<p>Since there are <a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=38639" target="_blank">are</a> <a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=33312" target="_blank">a</a> <a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=44455" target="_blank">few</a> <a href="http://qc.embarcadero.com/wc/qcmain.aspx" target="_blank">QC</a> <a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=63354" target="_blank">entries</a> on the EditorLineEnds.ttr file: what is it?<a href="http://farm7.static.flickr.com/6146/5957388582_41e26d7c17_b.jpg"><img class="alignright" title="EditorLineEndings.ttr font containing characters 0x0030, 0x0031, 0x0032 and 0x0033" src="http://farm7.static.flickr.com/6146/5957388582_41e26d7c17_b.jpg" alt="" width="288" height="72" /></a></p>
<p>In fact, there are two files in that %TEMP% directory: EditorLineEnds.ttr and EditorLineEnds.for</p>
<p>EditorLineEnds.ttr is in fact a TrueType font (you can copy it to EditorLineEnds.ttf and view it using the font viewer that Windows has built-in).<span id="more-6149"></span></p>
<p>EditorLineEnds.for is actually a <a href="http://www.filetypehelp.com/fon-file-extension-overview/" target="_blank">FON file</a> not with a <a href="http://falloutmods.wikia.com/wiki/FON_File_Format" target="_blank">bitmap FON</a>, but redirecting (using the FONTDIR and FONTRES entries, also supported by the <a href="http://svn.netlabs.org/repos/odin32/trunk/src/gdi32/fontres.cpp" target="_blank">Odin Font support</a> and the <a href="http://www.chiark.greenend.org.uk/~sgtatham/fonts/mkwinfont" target="_blank">Python mkwinfont utility</a>) to an external font resource in EditorLineEnds.ttr.</p>
<p>Since a FON file is stored as a <a href="http://en.wikipedia.org/wiki/Portable_Executable" target="_blank">Portable Executable file format</a>, it is loadable as a Windows module (and you can use <a href="http://docwiki.embarcadero.com/RADStudio/en/TDUMP.EXE,_the_File_Dumping_Utility" target="_blank">TDUMP</a> with the -e parameter to dump it as a Windows executable). I think  the EditorLineEnds.ttr can be in the same directory as the EditorLineEnds.for file, but the EditorLineEnds.for file actually specifies the complete path to the EditorLineEnds.ttr file.</p>
<p>I&#8217;m not sure why Delphi generates these resources on-the-fly, as it would have been about as easy to install this font as a regular Windows font.</p>
<p>Since the TrueType font has been created by Allen Bauer in 2002, and modified in 2004. He is still at the Delphi team, so he might comment <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.sandboxie.com/phpbb/viewtopic.php?t=3172&amp;sid=7c3a71691556de4e876aaefc8fe7839d" target="_blank">Both files are loaded</a> using the <a href="http://msdn.microsoft.com/en-us/library/dd183517.aspx" target="_blank">CreateScalableFontResource API call</a>, which makes it hard to sandbox the Delphi IDE.</p>
<p>You can view the content with the <a href="http://us.fontviewer.de/download.html" target="_blank">d4p fonts.exe TrueType/OpenType font viewer</a>: it contains 4 glyphs; 0&#215;030, 0&#215;031, x0031, 0&#215;32.</p>
<p>You can dump the contents of a TrueType font using the <a href="http://www.alanwood.net/unicode/utilities_fonts.html#ttfdump" target="_blank">TTFDump tool</a> provided by the <a href="http://www.microsoft.com/typography/tools/tools.aspx" target="_blank">Microsoft Tyography Internal Tools</a>.</p>
<p>The EditorLineEnds.ttf includes these <a href="http://fontforge.sourceforge.net/TrueOpenTables.html" target="_blank">tables</a> (with links to Apple/Adobe), of which <a href="http://www.adobe.com/devnet/opentype/afdko/topic_tables_win.html" target="_blank">these tables are supported by Windows</a>:</p>
<ul>
<li>OS/2: OS/2 and Windows Metrics<br />
(with the vendor ID BORL. <a href="http://www.thestreet.com/quote/BORL.html" target="_blank">BORL</a> used to be the <a href="http://www.nasdaq.com/asp/symbolchangehistory.asp" target="_blank">NASDAQ symbol</a> for Borland stock)</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6cmap.html" target="_blank">cmap</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_cmap.html" target="_blank">cmap</a>: Character To Index Map</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6gasp.html" target="_blank">gasp</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_gasp.html" target="_blank">gasp</a>: Grid-fitting And Scan-conversion Procedure</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6glyf.html" target="_blank">glyf</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_glyf.html" target="_blank">glyf</a>: Glyph Data</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6head.html" target="_blank">head</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_head.html" target="_blank">head</a>: Font Header</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6hhea.html" target="_blank">hhea</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_hhea.html" target="_blank">hhea</a>: Horizontal Header</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6hmtx.html" target="_blank">hmtx</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_hmtx.html" target="_blank">hmtx</a>: Horizontal Metrics</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6loca.html" target="_blank">loca</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_loca.html" target="_blank">loca</a>: Index To Location Table</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6maxp.html" target="_blank">maxp</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_maxp.html" target="_blank">maxp</a>: Maximum Profile</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6name.html" target="_blank">name</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_name.html" target="_blank">name</a>: Naming Table</li>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6post.html" target="_blank">post</a>/<a href="http://partners.adobe.com/public/developer/opentype/index_post.html" target="_blank">post</a>: PostScript Metrics</li>
</ul>
<p>It lacks these tables:</p>
<ul>
<li><a href="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6cvt.html" target="_blank">cvt </a>/<a href="http://partners.adobe.com/public/developer/opentype/index_cvt.html" target="_blank">cvt </a>: Control Value Table</li>
<li>DSIG/<a href="http://partners.adobe.com/public/developer/opentype/index_dsig.html" target="_blank">DSIG</a>: Digital Signature</li>
</ul>
<p>Some strings from the EditorLineEndings.ttr file:</p>
<ul>
<li>© 2002 Borland Software Corporation</li>
<li>Editor Line Endings</li>
<li>Regular</li>
<li>Borland Software Corp.</li>
<li>Line Ending Font</li>
<li>EditorLineEnds</li>
<li>Version 1.00; August 16, 2002</li>
<li>LineEnds is a trademark of Borland Software Corporation</li>
<li>Typeface</li>
<li>Version 1.01; March 26, 2004</li>
<li>Borland Software Corp &#8211; Allen Bauer</li>
<li>Font designed for display line break styles in Delphi IDE Editor</li>
<li>http://www.borland.com</li>
</ul>
<p>Another odd thing is: I have never seen the glyphs provided  in the EditorLineEnds.ttf file inside the IDE.</p>
<p>So if anyone knows where this is actually being used: please let me know <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/font/'>Font</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6149/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6149&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/29/editorlineends-ttr-what-is-it/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://farm7.static.flickr.com/6146/5957388582_41e26d7c17_b.jpg" medium="image">
			<media:title type="html">EditorLineEndings.ttr font containing characters 0x0030, 0x0031, 0x0032 and 0x0033</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 Update 1 is out; be sure to get it.</title>
		<link>http://wiert.me/2011/09/28/delphi-xe2-update-1-is-out-be-sure-to-get-it/</link>
		<comments>http://wiert.me/2011/09/28/delphi-xe2-update-1-is-out-be-sure-to-get-it/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 13:28:59 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6715</guid>
		<description><![CDATA[I&#8217;m at the BASTA.NET conference, so I need to keep this short: Be sure to get Delphi XE2 Update 1 and read the release notes. You will need it in order to apply future updates, which will come soon and often: a big change when compared to previous product releases. You will need do a full [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6715&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m at the <a href="http://basta.net/" target="_blank">BASTA.NET</a> conference, so I need to keep this short:</p>
<p>Be sure to get <a href="http://edn.embarcadero.com/article/41650" target="_blank">Delphi XE2 Update 1</a> and <a href="http://docwiki.embarcadero.com/RADStudio/en/Release_Notes_for_XE2#Please_Install_XE2_Update_1" target="_blank">read the release notes</a>. You will need it in order to apply future updates, which will come soon and often: a big change when compared to previous product releases.</p>
<p>You will need do a full uninstall/install cycle, which will take a while.</p>
<p>On the Mac, you will also need to uninstall/install the Delphi XE 2 FireMonkey iOS support package as well.</p>
<p>It is worth it: tons of bug fixes, and an importent fix to comply with licensing (the first XE2 version had a license issue with the GLScene: if you have 3D apps, then Installing Update 1 and rebuilding your source will ensure that your applications have a valid redistributable license).</p>
<p>Bug fixes (over 120!) are in these areas:</p>
<ul>
<li>FireMonkey design-time and run-time fixes</li>
<li>New VCL Styles</li>
<li>VCL Styles design-time and run-time fixes</li>
<li>IDE fixes to improve stability</li>
<li>C++ and Delphi compiler fixes</li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6715/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6715/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6715/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6715&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/28/delphi-xe2-update-1-is-out-be-sure-to-get-it/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>BLTN: GExperts build 1.35 for Delphi and RAD Studio XE2</title>
		<link>http://wiert.me/2011/09/28/bltn-gexperts-build-1-35-for-delphi-and-rad-studio-xe2/</link>
		<comments>http://wiert.me/2011/09/28/bltn-gexperts-build-1-35-for-delphi-and-rad-studio-xe2/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 05:00:51 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6677</guid>
		<description><![CDATA[I forgot to blog on this while prepping for Delphi Tage and DelphiLive, so here it goes (BLTN, no, not that movie): Thursday, 01 September 2011 00:00 We now have a pre-release of GExperts 1.35 available for download that supports RAD Studio XE2.  We especially appreciate your help testing FireMonkey and 64-bit compatibility, support for unit scope [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6677&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I forgot to blog on this while prepping for Delphi Tage and DelphiLive, so here it goes (<a href="http://idioms.thefreedictionary.com/Better+late+than+never" target="_blank">BLTN</a>, no, not <a href="http://en.wikipedia.org/wiki/Better_Late_Than_Never_(film)" target="_blank">that movie</a>):</p>
<blockquote><p><em>Thursday, 01 September 2011 00:00</em><br />
We now have a pre-release of GExperts 1.35 available for <a style="text-decoration:underline;color:#297cad;margin:0;padding:0;" href="http://gexperts.org/download.html">download</a> that supports RAD Studio XE2.  We especially appreciate your help testing FireMonkey and 64-bit compatibility, support for unit scope prefixes, etc.</p></blockquote>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://gexperts.org/General/delphi-and-rad-studio-xe2-support.html">Delphi and RAD Studio XE2 Support | General</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6677/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6677&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/28/bltn-gexperts-build-1-35-for-delphi-and-rad-studio-xe2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi Spring, Mocks and how to use them: some links</title>
		<link>http://wiert.me/2011/09/27/delphi-spring-mocks-and-how-to-use-them-some-links/</link>
		<comments>http://wiert.me/2011/09/27/delphi-spring-mocks-and-how-to-use-them-some-links/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 11:00:14 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6683</guid>
		<description><![CDATA[Now that there is Spring and Mocks for Delphi, it is time to post a few links: Nick Hodges indicating he is going to write more about Delphi Spring and Mocks Nick Hodges&#8217; first article (in a 5 series part) on Delphi Spring framework, Dependency Injection and Unit testing Vincent Parret on Introducing Delphi Mocks [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6683&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Now that there is Spring and Mocks for Delphi, it is time to post a few links:</p>
<ul>
<li><a href="http://www.finalbuilder.com/Resources/Blogs/tabid/458/EntryId/287/Introducing-Delphi-Mocks.aspx">Nick Hodges indicating he is going to write more about Delphi Spring and Mocks</a></li>
<li><a href="http://www.nickhodges.com/post/Getting-Giddy-with-Dependency-Injection-and-Delphi-Spring-1.aspx," target="_blank">Nick Hodges&#8217; first article (in a 5 series part) on Delphi Spring framework, Dependency Injection and Unit testing</a></li>
<li><a href="http://www.finalbuilder.com/Resources/Blogs/tabid/458/EntryId/287/Introducing-Delphi-Mocks.aspx">Vincent Parret on Introducing Delphi Mocks</a></li>
<li><a href="http://delphilive.com/2011/sessions?tid=2149#session-19527" target="_blank">Nick Hodges&#8217; Delphi Live session on the Delphi Spring Framework</a> (I hope he posts samples and slides soon)</li>
</ul>
<p>Hope you enjoy them as much as I do!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6683/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6683/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6683/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6683&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/27/delphi-spring-mocks-and-how-to-use-them-some-links/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>A few more classics on BitSavers in the /pdf/borland tree</title>
		<link>http://wiert.me/2011/09/27/a-few-more-classics-on-bitsavers-in-the-pdfborland-tree/</link>
		<comments>http://wiert.me/2011/09/27/a-few-more-classics-on-bitsavers-in-the-pdfborland-tree/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 05:00:05 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6673</guid>
		<description><![CDATA[Hope you like these classics from the early Borland era: The 1985 Turbo Pascal Version 3.0 Reference Manual Jan 1985 Turbo Tutor_Version_1.0: a Self-Study Guide on Turbo Pascal Jun 1987 Borland Byte Ad on Eureka: The Solver Aug 1988 Borland Byte Ad on the Adventures of Turbo Man Nov 1988 Borland Byte Ad on Turbo Pasal 5.0, Turbo Debugger 1.0 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6673&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hope you like these classics from the early Borland era:</p>
<ul>
<li>The 1985 <a href="http://bitsavers.org/pdf/borland/turbo_pascal/Turbo_Pascal_Version_3.0_Reference_Manual_1985.pdf">Turbo Pascal Version 3.0 Reference Manual</a></li>
<li>Jan 1985 <a href="http://bitsavers.org/pdf/borland/turbo_pascal/Turbo_Tutor_Version_1.0_Jan85.pdf">Turbo Tutor_Version_1.0</a>: a Self-Study Guide on Turbo Pascal</li>
<li>Jun 1987 <a href="http://bitsavers.org/pdf/borland/Ads/Borland_Byte_Jun87.pdf">Borland Byte Ad on Eureka: The Solver</a></li>
<li>Aug 1988 <a href="http://bitsavers.org/pdf/borland/Ads/Borland_Byte_Aug88.pdf">Borland Byte Ad on the Adventures of Turbo Man</a></li>
<li>Nov 1988 <a href="http://bitsavers.org/pdf/borland/Ads/Borland_Byte_Nov88.pdf">Borland Byte Ad on Turbo Pasal 5.0, Turbo Debugger 1.0 and Turbo C 2.0</a></li>
</ul>
<p>Oh, and if you &#8211; like me &#8211; started in the Apple ][ and Lisa era, there are lots of nice documents of Apple products from that period to, for instance:</p>
<ul>
<li><a href="http://bitsavers.org/pdf/apple/lisa/">http://bitsavers.org/pdf/apple/lisa/</a></li>
<li><a href="http://bitsavers.org/pdf/apple/apple_II/">http://bitsavers.org/pdf/apple/apple_II/</a></li>
<li>Mar 1983 <a href="http://www.bitsavers.org/pdf/softech/Softech_IV_AppleII_Mar83.pdf">Softech UCSD p-System IV for Apple II</a> (covering Pascal and Basic) and  Mar 1980 <a href="http://www.bitsavers.org/pdf/softech/USCD_PASCAL_Maintenance_News_Vol1No2_Mar80.pdf">USCD Pascal Maintenance News Vol 1 No 1</a> on <a href="http://www.bitsavers.org/pdf/softech/">http://www.bitsavers.org/pdf/softech/</a></li>
</ul>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://bitsavers.org/pdf/borland/">Index of /pdf/borland</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6673/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6673&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/27/a-few-more-classics-on-bitsavers-in-the-pdfborland-tree/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>C# Using Blocks can Swallow Exceptions &#124; DigitallyCreated</title>
		<link>http://wiert.me/2011/09/22/c-using-blocks-can-swallow-exceptions-digitallycreated/</link>
		<comments>http://wiert.me/2011/09/22/c-using-blocks-can-swallow-exceptions-digitallycreated/#comments</comments>
		<pubDate>Thu, 22 Sep 2011 05:00:11 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5947</guid>
		<description><![CDATA[I got to the SafeUsingBlock extension method because of a nice StackOverflow thread on exceptions swallowed in a using block. Actually, you can broaden the case into a wider scope: in any language when you protect resources in a try finally block (essentially, a using will turn into an implicit try finally block), and both [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5947&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I got to the <a href="http://www.digitallycreated.net/Blog/51/c#-using-blocks-can-swallow-exceptions" target="_blank">SafeUsingBlock extension method</a> because of a <a href="http://stackoverflow.com/questions/6457963/using-block-swallowing-exceptions" target="_blank">nice StackOverflow thread on exceptions swallowed in a using block</a>.</p>
<p>Actually, you can broaden the case into a wider scope: in any language when you protect resources in a try finally block (essentially, a <a href="http://msdn.microsoft.com/en-us/library/yh598w02.aspx" target="_blank">using</a> will turn into an implicit try finally block), and both the core logic and the finally throw an exception, the exception from the core block is swallowed.</p>
<p>Simple C# example:</p>
<p><pre class="brush: csharp;">
using System;
public class Example
{
    public void Main()
    {
        try
        {
                try
                {
                    throw new ApplicationException(&quot;logic block&quot;);
                }
                finally
                {
                    throw new ApplicationException(&quot;finally block&quot;);
                }
        }
        catch (Exception error)
        {
            Console.WriteLine(error.ToString());
        }
    }
}
</pre></p>
<p>Simple Delphi example:</p>
<p><pre class="brush: delphi;">
program Example;
begin
  try
    try
      raise Exception.Create('logic block');
    finally
      raise Exception.Create('finally block');
    end;
  except
    on error: Exception do
    begin
      Write(error.ClassName, ' ', error.Message);
    end;
  end;
end.
</pre></p>
<p>Both examples will only write out the <span style="text-decoration:underline;">finally block</span> exception message, not the <span style="text-decoration:underline;">logic block</span> exception message.</p>
<p>This is a corner case (like the <a href="http://msdn.microsoft.com/en-us/library/aa355056.aspx" target="_blank">example from the MSDN documentation</a>), from which the <a href="http://www.digitallycreated.net/Blog/51/c#-using-blocks-can-swallow-exceptions" target="_blank">SafeUsingBlock</a> protects you from by providing an <span style="text-decoration:underline;">AggregateException</span> class.</p>
<p>In C#, it is a <a href="http://stackoverflow.com/questions/577607/should-you-implement-idisposable-dispose-so-that-it-never-throws/577671#577671" target="_blank">guideline to avoid throwing exceptions in the Dispose</a> when implementing the disposable pattern.</p>
<p>This is <a href="http://stackoverflow.com/questions/577607/should-you-implement-idisposable-dispose-so-that-it-never-throws/577671" target="_blank">good practice in any programming environment</a>: when disposing objects, only throw exceptions in very critical situations when the containing process has been corrupted.</p>
<p>Practically this is very easy as the disposers are very thin and should not contain any business logic, so it is pretty easy to spot places where the program state really is corrupt.</p>
<p>An other alternative is for instance have a Close method that throws an exception, and a disposer not throwing.</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://www.digitallycreated.net/Blog/51/c#-using-blocks-can-swallow-exceptions">C# Using Blocks can Swallow Exceptions | DigitallyCreated</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5947/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5947/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5947/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5947&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/22/c-using-blocks-can-swallow-exceptions-digitallycreated/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Dropbox &#8211; Simplify your life &#8211; easy way to sync your iOS Delphi XE2 FireMonkey stuff between your Mac and PC</title>
		<link>http://wiert.me/2011/09/20/dropbox-simplify-your-life-easy-way-to-sync-your-ios-delphi-xe2-firemonkey-stuff-between-your-mac-and-pc/</link>
		<comments>http://wiert.me/2011/09/20/dropbox-simplify-your-life-easy-way-to-sync-your-ios-delphi-xe2-firemonkey-stuff-between-your-mac-and-pc/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 05:00:34 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[OS X Lion]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6667</guid>
		<description><![CDATA[One of the things hard when doing FireMonkey iOS development Delphi XE2 is that you have a multi stage process: Develop and test using Delphi XE2 on Windows Compile and deploy on the iOS Simulator using xCode on OS X Deploy on the real iOS hardware using xCode OS X Basically you need to share [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6667&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the things hard when doing FireMonkey iOS development Delphi XE2 is that you have a multi stage process:</p>
<ol>
<li>Develop and test using Delphi XE2 on Windows</li>
<li>Compile and deploy on the iOS Simulator using xCode on OS X</li>
<li>Deploy on the real iOS hardware using xCode OS X</li>
</ol>
<p>Basically you need to share your project files both ways between Windows and OS X.</p>
<p>Naturally, you would share files between your Mac and Windows using <a href="http://en.wikipedia.org/wiki/Samba_(software)" target="_blank">Samba</a>. With the introduction of OS X Lion, the Samba support was rewritten, <a href="http://www.google.com/search?sourceid=chrome&amp;ie=UTF-8&amp;q=smb+os+x+lion+problems" target="_blank">causing all sorts of problems</a>.</p>
<p>One of the problems is that it uses a lot of CPU (I tried copying over a 40GB VM, and stopped because the fan in my MacBook Air was making so much noise, I was afraid it was going to take off).<br />
I didn&#8217;t even realize it had one, but <a href="http://www.ifixit.com/Teardown/MacBook-Air-11-Inch-Model-A1370-Teardown/3745/2#s17835" target="_blank">a MacBook Air has a Fan</a>, and it vents through the keyboard <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Now I use DropBox to share files between it. If you like that to, sign up with the URL at the end of this line. The 2GB account is free! <a href="http://db.tt/6f95UJW" target="_blank">http://db.tt/6f95UJW</a></p>
<p>And if you know a better way of sharing: please let me know!</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="https://www.dropbox.com/referrals">Dropbox &#8211; Referrals &#8211; Simplify your life</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/power-user/apple/'>Apple</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/power-user/apple/os-x/os-x-lion/'>OS X Lion</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6667/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6667&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/20/dropbox-simplify-your-life-easy-way-to-sync-your-ios-delphi-xe2-firemonkey-stuff-between-your-mac-and-pc/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows Metro Style Apps Developer Downloads: very early version of Windows 8</title>
		<link>http://wiert.me/2011/09/14/windows-metro-style-apps-developer-downloads-very-early-version-of-windows-8/</link>
		<comments>http://wiert.me/2011/09/14/windows-metro-style-apps-developer-downloads-very-early-version-of-windows-8/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 18:27:45 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 8]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6649</guid>
		<description><![CDATA[The download page states The Windows Developer Preview is a pre-beta version of Windows 8 for developers. But of course this is also interesting to designers and regular users: getting a hands-on impression of what Metro will bring to Windows 8. &#8211;jeroen via: Windows Metro Style Apps Developer Downloads. Filed under: .NET, Delphi, Development, Power User, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6649&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The download page states</p>
<blockquote><p>The Windows Developer Preview is a pre-beta version of Windows 8 for developers.</p></blockquote>
<p>But of course this is also interesting to designers and regular users: getting a hands-on impression of what Metro will bring to Windows 8.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://msdn.microsoft.com/en-us/windows/apps/br229516">Windows Metro Style Apps Developer Downloads</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/power-user/windows/'>Windows</a>, <a href='http://wiert.me/category/power-user/windows/windows-8/'>Windows 8</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6649/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6649&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/14/windows-metro-style-apps-developer-downloads-very-early-version-of-windows-8/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 x64 Extended floating point support: CodeCentral 28488 TExtendedX87: FPU-backed 80-bit Extended type for Win64</title>
		<link>http://wiert.me/2011/09/14/delphi-xe2-x64-extended-floating-point-support-codecentral-28488-textendedx87-fpu-backed-80-bit-extended-type-for-win64/</link>
		<comments>http://wiert.me/2011/09/14/delphi-xe2-x64-extended-floating-point-support-codecentral-28488-textendedx87-fpu-backed-80-bit-extended-type-for-win64/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 11:00:47 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi x64]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6632</guid>
		<description><![CDATA[in the Delphi 64 world, there is no official support for the Extended data type for various reasons. If you really need it, then you can use the TExtendedX87 unit by Philipp M. Schlüter as mentioned in this Embarcadero forum thread. &#8211;jeroen Via: 28488 TExtendedX87: FPU-backed 80-bit Extended type for Win64. Filed under: Delphi, Delphi x64, Development, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6632&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>in the <a href="http://stackoverflow.com/questions/4064189/floating-point-support-in-64-bit-compiler/4064428#4064428" target="_blank">Delphi 64 world, there is no official support for the Extended data type</a> for various reasons.</p>
<p>If you really need it, then you can use the <a href="http://cc.embarcadero.com/Item/28488" target="_blank">TExtendedX87 unit</a> by <a href="http://cc.embarcadero.com/Author/802978" target="_blank">Philipp M. Schlüter</a> as mentioned in <a href="https://forums.embarcadero.com/thread.jspa?threadID=60551" target="_blank">this Embarcadero forum thread</a>.</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://cc.embarcadero.com/Item/28488">28488 TExtendedX87: FPU-backed 80-bit Extended type for Win64</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-x64/'>Delphi x64</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6632/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6632/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6632/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6632&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/14/delphi-xe2-x64-extended-floating-point-support-codecentral-28488-textendedx87-fpu-backed-80-bit-extended-type-for-win64/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Two more FastMM XE2 updates on SourceForge.net in the SVN SCM trunk:</title>
		<link>http://wiert.me/2011/09/13/two-more-fastmm-xe2-updates-on-sourceforge-net-in-the-svn-scm-trunk/</link>
		<comments>http://wiert.me/2011/09/13/two-more-fastmm-xe2-updates-on-sourceforge-net-in-the-svn-scm-trunk/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 17:18:18 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi x64]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6644</guid>
		<description><![CDATA[Earlier this week, I wrote about FastMM XE2 update on SourceForge.net in the SVN SCM trunk. Pierre le Riche has been busy, and got the x64 FullDebugMode working with these two changes to the SourceForge.net: FastMM: SCM: Revision 37: x64 FullDebugMode with raw strack trace Revision 38: x64 stack trace in the FullDebugMode DLL using the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6644&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Earlier this week, I wrote about <a href="http://wiert.wordpress.com/2011/09/11/xe2-update-on-sourceforge-net-for-fastmm-in-the-svn-scm-trunk/">FastMM XE2 update on SourceForge.net in the SVN SCM trunk</a>.</p>
<p><a href="http://www.linkedin.com/pub/pierre-le-riche/14/345/222" target="_blank">Pierre le Riche</a> has been busy, and got the x64 FullDebugMode working with these two changes to the <a href="http://sourceforge.net/scm/?type=svn&amp;group_id=130631">SourceForge.net: FastMM: SCM</a>:</p>
<ul>
<li><a href="http://fastmm.svn.sourceforge.net/viewvc/fastmm?revision=37&amp;view=revision" target="_blank">Revision 37: x64 FullDebugMode with raw strack trace</a></li>
<li><a href="http://fastmm.svn.sourceforge.net/viewvc/fastmm?revision=38&amp;view=revision" target="_blank">Revision 38: x64 stack trace in the FullDebugMode DLL using the CaptureStackTrace API call</a></li>
</ul>
<p>Needs to be tested, so will do that the upcoming days.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-x64/'>Delphi x64</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6644/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6644&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/13/two-more-fastmm-xe2-updates-on-sourceforge-net-in-the-svn-scm-trunk/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Triest bericht: de SDC gaat dit jaar niet door. De altijd kleurrijke conferentie van de SDN voor Nederlandse software ontwikkelaars heeft het dit jaar niet gehaald</title>
		<link>http://wiert.me/2011/09/12/sdc-gaat-niet-door-de-altijd-kleurrijke-conferentie-van-de-sdn-voor-nederlandse-software-ontwikkelaars-heeft-het-dit-jaar-niet-gehaald/</link>
		<comments>http://wiert.me/2011/09/12/sdc-gaat-niet-door-de-altijd-kleurrijke-conferentie-van-de-sdn-voor-nederlandse-software-ontwikkelaars-heeft-het-dit-jaar-niet-gehaald/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 05:00:24 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6600</guid>
		<description><![CDATA[Quote van de SDC site: Helaas heeft de SDN moeten besluiten om SDC voor dit jaar (2011) van de agenda te halen. In 2012 zullen wij opnieuw een SDC organiseren. De aankomende SDE van 9 december is reeds in ver gevorderd stadium Wij hopen u daar te mogen begroeten Echt heel jammer, want de SDC bracht [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6600&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Quote van de SDC site:</p>
<blockquote><p>Helaas heeft de SDN moeten besluiten om SDC voor dit jaar (2011) van de agenda te halen.</p>
<p>In 2012 zullen wij opnieuw een SDC organiseren.</p>
<p>De aankomende SDE van 9 december is reeds in ver gevorderd stadium</p>
<p>Wij hopen u daar te mogen begroeten</p></blockquote>
<p>Echt heel jammer, want de SDC bracht al heel lang kleur in het landschap van de Nederlandse software ontwikkelaar, juist vanwege de keur aan sprekers (ze haalden altijd de meeste interessante sprekers uit buiten- en binnenland).</p>
<p>SDC (en haar voorloper CttM) was erbij toen Clipper begon, Delphi begon en .NET begon. Warme herinneringen komen boven aan al die prachtige conferenties, en mensen die ik er heb leren kennen.</p>
<p>Laten dus hopen dat het volgend jaar gewoon weer door gaat.</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://www.sdn.nl/SDN/SDNEvent/SDNConference2010/tabid/162/Default.aspx">SDN &#8211; Software Development Network &gt; SDN &gt; SDN Event &gt; SDN Conferences 2011</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6600/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6600/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6600/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6600&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/12/sdc-gaat-niet-door-de-altijd-kleurrijke-conferentie-van-de-sdn-voor-nederlandse-software-ontwikkelaars-heeft-het-dit-jaar-niet-gehaald/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>FastMM XE2 update on SourceForge.net in the SVN SCM trunk</title>
		<link>http://wiert.me/2011/09/11/xe2-update-on-sourceforge-net-for-fastmm-in-the-svn-scm-trunk/</link>
		<comments>http://wiert.me/2011/09/11/xe2-update-on-sourceforge-net-for-fastmm-in-the-svn-scm-trunk/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 22:30:19 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6615</guid>
		<description><![CDATA[Pierre le Riche just committed two changes to the SourceForge.net: FastMM: SCM: Revision 35: Delphi XE 32-bit support Revision 36: Delphi XE 64-bit support Which means that I can demo this during my DelphiLive sessions. Great work Pierre! &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6615&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.linkedin.com/pub/pierre-le-riche/14/345/222" target="_blank">Pierre le Riche</a> just committed two changes to the <a href="http://sourceforge.net/scm/?type=svn&amp;group_id=130631">SourceForge.net: FastMM: SCM</a>:</p>
<ul>
<li><a href="http://fastmm.svn.sourceforge.net/viewvc/fastmm?revision=35&amp;view=revision" target="_blank">Revision 35: Delphi XE 32-bit support</a></li>
<li><a href="http://fastmm.svn.sourceforge.net/viewvc/fastmm?revision=36&amp;view=revision" target="_blank">Revision 36: Delphi XE 64-bit support</a></li>
</ul>
<p>Which means that I can demo this during my <a href="http://delphilive.com/2011/" target="_blank">DelphiLive</a> sessions.</p>
<p>Great work Pierre!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6615/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6615&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/11/xe2-update-on-sourceforge-net-for-fastmm-in-the-svn-scm-trunk/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Arrived in San Jose, CA, USA for the DelphiLive tutorial and conference (DelphiLive people get internet free!)</title>
		<link>http://wiert.me/2011/09/11/arrived-in-san-jose-ca-usa-for-the-delphilive-tutorial-and-conference-delphilive-people-get-internet-free/</link>
		<comments>http://wiert.me/2011/09/11/arrived-in-san-jose-ca-usa-for-the-delphilive-tutorial-and-conference-delphilive-people-get-internet-free/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 22:13:11 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[About]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[LifeHacker]]></category>
		<category><![CDATA[Opinions]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Travel]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6609</guid>
		<description><![CDATA[I had a pretty OK direct KLM flight from AMS to SFO. Apart from some people behind me that seemed to have sufficient motoric coordination issues that they had to grab my chair each time they got up, or put their traytable up.  Some &#8211; even Dutch! &#8211; seem to think that using force is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6609&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://delphilive.com/konferenzen/delphilive2011"><img title="DelphiLive 2011" src="http://delphilive.com/konferenzen/delphilive2011/img/layout/header_en.png" alt="" width="576" height="84" /></a></p>
<p>I had a pretty OK direct <a href="http://en.wikipedia.org/wiki/Klm" target="_blank">KLM</a> flight from <a href="http://en.wikipedia.org/wiki/Amsterdam_Airport_Schiphol" target="_blank">AMS</a> to <a href="http://en.wikipedia.org/wiki/San_Francisco_International_Airport" target="_blank">SFO</a>.</p>
<p>Apart from some people behind me that seemed to have sufficient <a href="http://en.wikipedia.org/wiki/Motor_coordination">motoric coordination</a> issues that they had to grab my chair each time they got up, or put their traytable up.  Some &#8211; even Dutch! &#8211; seem to think that using force is the only way to get things done. So thank you people in seats 28H, J and K for ruining my sleep.<br />
The advantage of being in <a href="http://www.seatguru.com/airlines/KLM/KLM_Boeing_747-400_full.php" target="_blank">seat 27H in a Boeing 747-400</a> is that you get food really fast, and have direct access to drinks from the galley <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://twitter.com/#!/hankspore" target="_blank">Frank Stepan</a> &#8211; one of the <a href="http://delphilive.com/" target="_blank">DelphiLive</a> organizers &#8211; picked me up at the airport, and got me to the <a href="http://delphilive.com/2011/location/" target="_blank">conference hotel in Downtown San Jose</a>.</p>
<p>Check in went smooth.</p>
<p>Connecting to the Internet too: it is a breeze, compared to the <a href="http://wiert.wordpress.com/2011/09/09/swisscom-hotel-internet-fail-breaks-google-mail-lousy-internet-rates-for-eur-18-per-day/" target="_blank">Swisscom experience at the NH Hotel in Köln last week</a>.</p>
<p>Not as fast as the <a href="http://wiert.wordpress.com/2011/09/10/komed-internet-experience-getting-it-to-work-is-hard-but-it-is-fast/" target="_blank">KOMED internet on saturday</a>, but you have two choices:</p>
<p><strong>FreeDowntownWifi</strong>, which is &#8211; err &#8211; free. And has reasonable speed.</p>
<p><a href="http://farm7.static.flickr.com/6202/6137518905_f6daf3d0a3_o.png"><img class="alignnone" title="San Jose, CA understands that internet downtown should be free, and fast." src="http://farm7.static.flickr.com/6202/6137518905_f6daf3d0a3_o.png" alt="" width="277" height="157" /></a></p>
<p><strong>iBAHN internet</strong>, which is &#8211; err &#8211; free for DelphiLive attendees ans speakers. And also has reasonable speed.</p>
<p><a href="http://farm7.static.flickr.com/6062/6137518985_c96b074e61_o.png"><img class="alignnone" title="iBAHN hotel internet speed" src="http://farm7.static.flickr.com/6062/6137518985_c96b074e61_o.png" alt="" width="278" height="158" /></a></p>
<p>So I upgraded my iPad firmware, downloaded the new TomTom USA Map, and synced my gadgets to the cloud.</p>
<p>Time to do some final preparations on my tutorial and sessions, and then get something to eat.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/about/'>About</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/lifehacker/'>LifeHacker</a>, <a href='http://wiert.me/category/opinions/'>Opinions</a>, <a href='http://wiert.me/category/about/personal/'>Personal</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/about/personal/travel-personal-about/'>Travel</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6609/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6609&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/11/arrived-in-san-jose-ca-usa-for-the-delphilive-tutorial-and-conference-delphilive-people-get-internet-free/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://delphilive.com/konferenzen/delphilive2011/img/layout/header_en.png" medium="image">
			<media:title type="html">DelphiLive 2011</media:title>
		</media:content>

		<media:content url="http://farm7.static.flickr.com/6202/6137518905_f6daf3d0a3_o.png" medium="image">
			<media:title type="html">San Jose, CA understands that internet downtown should be free, and fast.</media:title>
		</media:content>

		<media:content url="http://farm7.static.flickr.com/6062/6137518985_c96b074e61_o.png" medium="image">
			<media:title type="html">iBAHN hotel internet speed</media:title>
		</media:content>
	</item>
		<item>
		<title>Bruno Fierens of TMSSoftware just showed their new chart that uses HTML5 with asynchronous event support cool!</title>
		<link>http://wiert.me/2011/09/10/bruno-fierens-of-tmssoftware-just-showed-their-new-grid-that-uses-html5-with-asynchronous-event-support-cool/</link>
		<comments>http://wiert.me/2011/09/10/bruno-fierens-of-tmssoftware-just-showed-their-new-grid-that-uses-html5-with-asynchronous-event-support-cool/#comments</comments>
		<pubDate>Sat, 10 Sep 2011 13:03:23 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6605</guid>
		<description><![CDATA[An HTML5 grid with no flickering, very little delay and smooth appearance on both regular and iPad webbrowsers: at the Delphi-Tage.de conference, Bruno Fierens of TMS Software just showed their new IntraWeb HTML5 chart component as he promised on his blog. Cool work in progress. Should become public soon! &#8211;jeroen Filed under: Delphi, Development, Software [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6605&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>An HTML5 grid with no flickering, very little delay and smooth appearance on both regular and iPad webbrowsers: at the Delphi-Tage.de conference, <a href="https://plus.google.com/103226893298125462157/posts" target="_blank">Bruno Fierens</a> of <a href="http://www.tmssoftware.com/site/" target="_blank">TMS Software</a> just showed their new IntraWeb HTML5 chart component as he <a href="http://www.tmssoftware.com/site/blog.asp" target="_blank">promised</a> on <a href="http://www.tmssoftware.com/site/blog.asp?s=detail&amp;author=Bruno Fierens" target="_blank">his blog</a>.</p>
<p>Cool work in progress.</p>
<p>Should become public soon!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6605/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6605/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6605/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6605&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/10/bruno-fierens-of-tmssoftware-just-showed-their-new-grid-that-uses-html5-with-asynchronous-event-support-cool/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Stephen Forte`s Blog &#8211; Silverlight is Dead, Long Live XAML</title>
		<link>http://wiert.me/2011/09/10/stephen-fortes-blog-silverlight-is-dead-long-live-xaml/</link>
		<comments>http://wiert.me/2011/09/10/stephen-fortes-blog-silverlight-is-dead-long-live-xaml/#comments</comments>
		<pubDate>Sat, 10 Sep 2011 06:53:04 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6593</guid>
		<description><![CDATA[Interesting, when you compare this with FireMonkey: native versus managed, and both good UIs. Interesting times ahead. In retrospect: storing the form in a DFM wasn&#8217;t such a bad idea after all &#8211;jeroen Via: Stephen Forte`s Blog &#8211; Silverlight is Dead, Long Live XAML. Filed under: .NET, Delphi, Development, FireMonkey, Software Development, XAML<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6593&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Interesting, when you compare this with FireMonkey: native versus managed, and both good UIs.</p>
<p>Interesting times ahead.</p>
<p>In retrospect: storing the form in a DFM wasn&#8217;t such a bad idea after all <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://www.stephenforte.net/PermaLink,guid,8b91d036-01b1-4a3e-9391-615eb801b969.aspx">Stephen Forte`s Blog &#8211; Silverlight is Dead, Long Live XAML</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/net/xaml/'>XAML</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6593/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6593&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/10/stephen-fortes-blog-silverlight-is-dead-long-live-xaml/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>#FireMonkey will be #updated early, #often and regularly. Before the end of this month, and initially multiple updates per quarter, later once per quarter (Michael Swindell on the #Embarcadero Discussion Forums)</title>
		<link>http://wiert.me/2011/09/10/firemonkey-will-be-updated-early-often-and-regularly-before-the-end-of-this-month-and-initially-multiple-updates-per-quarter-later-once-per-quarter-michael-swindell-on-the-embarcadero-discuss/</link>
		<comments>http://wiert.me/2011/09/10/firemonkey-will-be-updated-early-often-and-regularly-before-the-end-of-this-month-and-initially-multiple-updates-per-quarter-later-once-per-quarter-michael-swindell-on-the-embarcadero-discuss/#comments</comments>
		<pubDate>Sat, 10 Sep 2011 05:17:47 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6591</guid>
		<description><![CDATA[Quoting Michael Swindell: Re: Will Firemonkey be updated outside of regular product updates? Posted: Sep 8, 2011 5:11 PM   in response to: David Schwartz David Schwartz wrote: The product matrix shows that Firemonkey currently supports iOS 4.2. Apple will be introducing iOS 5 shortly. Will Firemonkey be updated to support newer iOS features periodically [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6591&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Quoting Michael Swindell:</p>
<blockquote><p>Re: Will Firemonkey be updated outside of regular product updates?</p>
<p>Posted: Sep 8, 2011 5:11 PM   in response to: David Schwartz</p>
<p>David Schwartz wrote:</p>
<blockquote><p>The product matrix shows that Firemonkey currently supports iOS 4.2.</p>
<p>Apple will be introducing iOS 5 shortly.</p>
<p>Will Firemonkey be updated to support newer iOS features periodically (eg., iOS 5 and possibly other things)? Or just once-a-year when Delphi is updated?</p></blockquote>
<p>Yes, since Firemonkey is 1.0 we&#8217;re going to be updating early, often, and regularly. The first update is well underway, will address a lot of great feedback, and should be out before the end of the month. We are planning updates on a regular cadence, initially several quarterly.</p>
<blockquote><p>(I&#8217;d love to see quarterly updates.)</p></blockquote>
<p>We&#8217;ll start out updating more often than quarterly, and settle into quarterly updates eventually. Embarcadero is behind FM in a big way, there is a lot of ongoing investment going on into this release, updates, performance enhancements, and future platform/feature support.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via <a href="https://forums.embarcadero.com/thread.jspa?threadID=60400">Embarcadero Discussion Forums: Will Firemonkey be updated outside of &#8230;</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6591/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6591/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6591/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6591&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/10/firemonkey-will-be-updated-early-often-and-regularly-before-the-end-of-this-month-and-initially-multiple-updates-per-quarter-later-once-per-quarter-michael-swindell-on-the-embarcadero-discuss/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE2 FireMonkey: the reason you should not have used assembly</title>
		<link>http://wiert.me/2011/09/09/delphi-xe2-firemonkey-the-reason-you-should-not-have-used-assembly/</link>
		<comments>http://wiert.me/2011/09/09/delphi-xe2-firemonkey-the-reason-you-should-not-have-used-assembly/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 11:00:56 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[About]]></category>
		<category><![CDATA[Certifications]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi-Tage.de]]></category>
		<category><![CDATA[DelphiLive]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6578</guid>
		<description><![CDATA[Right now, I&#8217;m porting a bunch of stuff over to FireMonkey in Delphi XE 2 so it can run cross platform. (Be sure to attend the RAD Studio XE2 World Tour when possible, this stuff is way cool!) Having avoided Windows x86 assembly in my own sources for years, I&#8217;m astonished by the number of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6578&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Right now, I&#8217;m porting a bunch of stuff over to FireMonkey in Delphi XE 2 so it can run cross platform.<br />
(Be sure to attend the <a href="http://www.embarcadero.com/world-tour" target="_blank">RAD Studio XE2 World Tour</a> when possible, this stuff is way cool!)</p>
<p>Having avoided Windows x86 assembly in my own sources for years, I&#8217;m astonished by the number of 3rd party libraries that do.</p>
<p>Right now, third party libraries that you want to use with FireMonkey need these requirements:</p>
<ol>
<li>In order to run on x64 or OS X:<br />
Don&#8217;t rely on x86 assembly instructions, or provide alternatives for other platforms than Windows x86</li>
<li>In order to run on the an iPhone, iPad or iPod touch iOS device (<a href="http://en.wikipedia.org/wiki/IOS#Development" target="_blank">which all run on Arm</a>), or <a href="http://en.wikipedia.org/wiki/IOS#SDK" target="_blank">iOS simulator from the iOS SDK</a> (which is not an emulator, it runs x86):<br />
Be compatible with <a href="http://docwiki.embarcadero.com/RADStudio/e/index.php?title=E2511_Type_parameter_%27%25s%27_must_be_a_class_type_(Delphi)&amp;oldid=166381#Clean_Previous_FreePascal_2.5.1" target="_blank">Free Pascal 2.5.1</a>.</li>
</ol>
<p>And the fact that you should have separated your business logic from your UI logic years ago <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Of course that was what the Future proofing your <a href="http://www.simonjstuart.com/2011/07/24/future-proofing-seminar/" target="_blank">Delphi apps seminar from Simon Stuart</a> was about.</p>
<p>What baffles me is that so little 3rd party code adheres to that.</p>
<p>&#8211;jeroen</p>
<p>PS:</p>
<p><a href="http://www.delphitage.de/index.php/agenda/workshops/freitag/" target="_blank">Today</a> and <a href="http://www.delphitage.de/index.php/agenda/haupt-veranstaltung-samstag/" target="_blank">tomorrow</a> I&#8217;m be at the <a href="http://www.delphi-tage.de/" target="_blank">German Delphi-Tage.de</a> conference; I&#8217;ve already met a lot of people in the Delphi XE2 tutorial and look forward to meet more tomorrow.<br />
Contrary to what <a href="http://www.delphitage.de/index.php/agenda/timetable/" target="_blank">the schedule</a> says, my session on a pragmatic Delphi code generator will be in <span style="text-decoration:underline;">German</span>, I&#8217;m sure most attendees will like that.</p>
<p>Sunday I&#8217;ll fly to <a href="http://www.flysfo.com/web/page/index.jsp" target="_blank">SFO</a> to speak at the <a href="http://delphilive.com/" target="_blank">DelphiLive.com conference</a> in <a href="http://delphilive.com/2011/location/" target="_blank">San Jose, CA</a>.<br />
There, <a href="http://delphilive.com/2011/speaker/#171" target="_blank">my</a> preconference <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19989" target="_blank">tutorial on Delphi Certification</a> and sessions on <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19994" target="_blank">XML</a> and <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19994" target="_blank">XSLT</a> will be in English, as I&#8217;m sure more people there understand that better than German <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />Filed under: <a href='http://wiert.me/category/about/'>About</a>, <a href='http://wiert.me/category/about/personal/certifications/'>Certifications</a>, <a href='http://wiert.me/category/event/conferences/'>Conferences</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/event/conferences/delphi-tage-de/'>Delphi-Tage.de</a>, <a href='http://wiert.me/category/event/conferences/delphilive/'>DelphiLive</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/event/'>Event</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/about/personal/'>Personal</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6578/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6578/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6578/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6578&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/09/delphi-xe2-firemonkey-the-reason-you-should-not-have-used-assembly/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>ModelMaker Code Explorer 9.1.0 available for Delphi XE2</title>
		<link>http://wiert.me/2011/09/08/modelmaker-code-explorer-9-1-0-available-for-delphi-xe2/</link>
		<comments>http://wiert.me/2011/09/08/modelmaker-code-explorer-9-1-0-available-for-delphi-xe2/#comments</comments>
		<pubDate>Thu, 08 Sep 2011 11:00:25 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6525</guid>
		<description><![CDATA[ModelMaker Code Explorer 9.1.0 was released yesterday which supports Rad Studio / Delphi XE2. Highly recommended for building and refactoring Delphi applications! &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6525&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.modelmakertools.com/code-explorer/history/mmx910.html">ModelMaker Code Explorer 9.1.0</a> was released yesterday which supports Rad Studio / Delphi XE2.</p>
<p>Highly recommended for building and refactoring Delphi applications!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6525/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6525/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6525&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/08/modelmaker-code-explorer-9-1-0-available-for-delphi-xe2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>EmbarcaderoTechNet&#8217;s Channel &#8211; YouTube</title>
		<link>http://wiert.me/2011/09/06/embarcaderotechnets-channel-youtube/</link>
		<comments>http://wiert.me/2011/09/06/embarcaderotechnets-channel-youtube/#comments</comments>
		<pubDate>Tue, 06 Sep 2011 11:00:28 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[FireMonkey]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6513</guid>
		<description><![CDATA[EmbarcaderoTechNet published a couple of interesting videos on YouTube covering Delphi XE2 including FireMonkey HD/3D, FireMonkey xPlatform, VCL Styles and more. All of them short (couple of minutes each) studio work with good video and audio quality (they default to 360p, but most are available in 720p HD, some just in 480p). &#8211;jeroen Via: EmbarcaderoTechNet&#8217;s Channel &#8211; YouTube. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6513&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.youtube.com/user/EmbarcaderoTechNet#p/u" target="_blank">EmbarcaderoTechNet published a couple of interesting videos on YouTube</a> covering Delphi XE2 including <a href="http://www.youtube.com/user/EmbarcaderoTechNet#p/u/1/80hfge8NwCE" target="_blank">FireMonkey HD/3D</a>, <a href="http://www.youtube.com/user/EmbarcaderoTechNet#p/u/2/NzLCGvpGGAg" target="_blank">FireMonkey xPlatform</a>, <a href="http://www.youtube.com/user/EmbarcaderoTechNet#p/u/0/D2wnmm5nnjs" target="_blank">VCL Styles</a> and more.</p>
<p>All of them short (couple of minutes each) studio work with good video and audio quality (they default to 360p, but most are available in <a href="http://en.wikipedia.org/wiki/720p" target="_blank">720p HD</a>, some just in <a href="http://en.wikipedia.org/wiki/480p" target="_blank">480p</a>).</p>
<p>&#8211;jeroen</p>
<p>Via: <a href="http://www.youtube.com/user/EmbarcaderoTechNet">EmbarcaderoTechNet&#8217;s Channel &#8211; YouTube</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/firemonkey/'>FireMonkey</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6513/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6513/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6513/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6513&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/06/embarcaderotechnets-channel-youtube/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Rad Studio XE2 demos up at SourceForge.net: Repository &#8211; [radstudiodemos] Index of /branches/RadStudio_XE2</title>
		<link>http://wiert.me/2011/09/05/rad-studio-xe2-demos-up-at-sourceforge-net-repository-radstudiodemos-index-of-branchesradstudio_xe2/</link>
		<comments>http://wiert.me/2011/09/05/rad-studio-xe2-demos-up-at-sourceforge-net-repository-radstudiodemos-index-of-branchesradstudio_xe2/#comments</comments>
		<pubDate>Mon, 05 Sep 2011 20:36:26 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6506</guid>
		<description><![CDATA[Note to Self: A few days ago, the Rad Studio XE2 demos became available at sourceforge.net: SourceForge.net Repository &#8211; [radstudiodemos] Index of /branches/RadStudio_XE2. You can get them by SVN as well: http://sourceforge.net/projects/radstudiodemos/develop &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6506&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Note to Self:</p>
<p>A few days ago, the Rad Studio XE2 demos became available at sourceforge.net: <a href="http://radstudiodemos.svn.sourceforge.net/viewvc/radstudiodemos/branches/RadStudio_XE2/">SourceForge.net Repository &#8211; [radstudiodemos] Index of /branches/RadStudio_XE2</a>.</p>
<p>You can get them by SVN as well: <a href="http://sourceforge.net/projects/radstudiodemos/develop">http://sourceforge.net/projects/radstudiodemos/develop</a></p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6506/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6506/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6506/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6506&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/09/05/rad-studio-xe2-demos-up-at-sourceforge-net-repository-radstudiodemos-index-of-branchesradstudio_xe2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>delphi has TTransparentCustomControl in the Controls unit</title>
		<link>http://wiert.me/2011/08/23/delphi-has-ttransparentcustomcontrol-in-the-controls-unit/</link>
		<comments>http://wiert.me/2011/08/23/delphi-has-ttransparentcustomcontrol-in-the-controls-unit/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 05:00:26 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6068</guid>
		<description><![CDATA[Wow, I never noticed that Delphi 2006 introduced the TTransparentCustomControl. I spotted it a while ago from the delphi &#8211; Transparent TCustomControl? answer on StackOverflow. It is not used in the Delphi VCL itself, but a google search reveals that a few people have actually used it, and Steve Trefethen (former member of the VCL team) mentioned [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6068&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Wow, I never noticed that Delphi 2006 introduced the <a href="http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/Controls_TCustomTransparentControl.html" target="_blank">TTransparentCustomControl</a>.</p>
<p>I spotted it a while ago from the <a href="http://stackoverflow.com/questions/6682396/transparent-tcustomcontrol/6682627#6682627">delphi &#8211; Transparent TCustomControl?</a> answer on StackOverflow.</p>
<p>It is not used in the Delphi VCL itself, but a <a href="http://www.google.com/search?pwst=1&amp;q=delphi+TCustomTransparentControl" target="_blank">google search</a> reveals that a few people <a href="http://embarcadero.newsgroups.archived.at/public.delphi.vcl.components.using/200907/0907142647.html" target="_blank">have actually used it</a>, and <a href="https://plus.google.com/112592384848316734954/posts" target="_blank">Steve Trefethen</a> (former member of the VCL team) <a href="http://www.stevetrefethen.com/blog/VCLandRTLenhancementssinceDelphi7(D7).aspx" target="_blank">mentioned it too</a>.</p>
<p>Note that it contains a <a href="http://qc.embarcadero.com/wc/qcmain.aspx?d=32898" target="_blank">mouse interception bug that is still open</a>.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6068/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6068/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6068/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6068&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/23/delphi-has-ttransparentcustomcontrol-in-the-controls-unit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>ISO 8601 Date, Time and DateTime in Delphi (was: Simple example to show DateTime.Now in ISO 8601 format on ideone.com &#124; Online C# Compiler &amp; Debugging Tool)</title>
		<link>http://wiert.me/2011/08/18/iso-8601-date-time-and-datetime-in-delphi-was-simple-example-to-show-datetime-now-in-iso-8601-format-on-ideone-com-online-c-compiler-debugging-tool/</link>
		<comments>http://wiert.me/2011/08/18/iso-8601-date-time-and-datetime-in-delphi-was-simple-example-to-show-datetime-now-in-iso-8601-format-on-ideone-com-online-c-compiler-debugging-tool/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 05:00:32 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6062</guid>
		<description><![CDATA[In the past I wrote about a Simple example to show DateTime.Now in ISO 8601 format on ideone.com &#124; Online C# Compiler &#38; Debugging Tool , using ISO 8601 in batch-files, and how ISO 8601 is used in Google Calendar URLs. Time to write something about ISO 8601 Date, Time and DateTime and Delphi. First of all the DateUtils [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6062&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In the past I wrote about a <a href="http://wiert.wordpress.com/2011/05/17/simple-example-to-show-datetime-now-in-iso-8601-format-on-ideone-com-online-c-compiler-debugging-tool/">Simple example to show DateTime.Now in ISO 8601 format on ideone.com | Online C# Compiler &amp; Debugging Tool </a>, <a href="http://wiert.wordpress.com/2011/01/10/batch-file-scripts-to-get-current-date-and-current-time-in-sortable-iso-8601-format/" target="_blank">using ISO 8601 in batch-files</a>, and <a href="http://wiert.wordpress.com/2010/06/28/google-calendar-printing-multiple-months-or-weeks-to-pdf/" target="_blank">how ISO 8601 is used in Google Calendar URLs</a>.</p>
<p>Time to write something about <a href="http://en.wikipedia.org/wiki/ISO_8601" target="_blank">ISO 8601</a> Date, Time and DateTime and Delphi.</p>
<p>First of all the <a href="http://docwiki.embarcadero.com/VCL/en/DateUtils" target="_blank">DateUtils</a> unit contains a bunch of routines (for instance <a href="http://docwiki.embarcadero.com/VCL/en/DateUtils.DecodeDateWeek" target="_blank">DecodeDateWeek</a>) that understand <a href="http://en.wikipedia.org/wiki/Seven-day_week#Week_numbering" target="_blank">ISO 8601 week numbers</a>, where:</p>
<ul>
<li>Weeks start at Monday</li>
<li>The first week of a year contains (<a href="http://en.wikipedia.org/wiki/ISO_week_date#Relation_with_the_Gregorian_calendar" target="_blank">these are equivalent</a>):
<ul>
<li>The first thursday in that year</li>
<li>Has at least 4 days in that year</li>
<li>Contains the 4th of January</li>
</ul>
</li>
</ul>
<p>Otherwise the week containing January 1st is week 52 or 53 of the previous year</p>
<p><a href="http://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations" target="_blank">ISO 8601 also specifies how to format Dates, Times,  DateTimes and durations</a> according to <a href="http://en.wikipedia.org/wiki/ISO_8601#General_principles" target="_blank">some basic principles</a>.</p>
<p><a href="http://en.wikipedia.org/wiki/XML" target="_blank">XML</a> uses <a href="http://www.w3.org/TR/xmlschema-2/#isoformats" target="_blank">ISO 8601 to format Date, Time and DateTime and some other formats as text</a> too.</p>
<p>So it is no wonder that since Delphi 6, it contains a <a href="http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/XSBuiltIns.html" target="_blank">XSBuiltIns unit</a> covering (among other things) ISO 8601 formatting.</p>
<p>Given the <a href="http://www.google.com/search?q=delphi+iso+8601+site%3Astackoverflow.com" target="_blank">many Delphi ISO 8601 relates questions on StackOverflow</a> of which I <a href="http://stackoverflow.com/questions/6651829/how-do-i-convert-an-iso-8601-string-to-a-delphi-tdate/6659254#6659254" target="_blank">answered</a> <a href="http://stackoverflow.com/questions/1438870/in-delphi-is-there-a-function-to-convert-xml-date-and-time-to-tdatetime/1439154#1439154" target="_blank">two</a>, and my need for ISO 8601 DateTime conversion for exporting Excel XML, here is are some samples to get started in the unit below (and in this <a href="http://bo.codeplex.com/SourceControl/changeset/changes/68718" target="_blank">codeplex changeset</a>).</p>
<p>The unit covers Date, Time and DateTime.<br />
You can write similar code for Duration.<span id="more-6062"></span></p>
<p><pre class="brush: delphi;">
unit Iso8601Unit;

interface

type
  TUtc = class(TObject)
  public
    class function FromUtc(const Value: TDateTime): TDateTime; static;
    class function ToUtc(const Value: TDateTime): TDateTime; static;
    class function UtcNow: TDateTime; static;
  end;

  TToTIso8601 = class(TUtc)
  public
    class function DateTimeToIso8601(const Value: TDateTime): string; static;
    class function DateToIso8601(const Value: TDate): string; static;
    class function TimeToIso8601(const Value: TTime): string; static;
    class function UtcTimeToIso8601(const Value: TTime): string; static;
  end;

  TIso8601 = class(TToTIso8601)
  public
    class function DateFromIso8601(const Value: string): TDate; static;
    class function DateTimeFromIso8601(const Value: string): TDateTime; static;
    class function TimeFromIso8601(const Value: string): TTime; static;
    class function UtcDateTimeToIso8601(const Value: TDateTime): string; static;
  end;

implementation

uses
  XSBuiltIns,
  SysUtils,
  IdGlobalProtocols;

class function TIso8601.DateFromIso8601(const Value: string): TDate;
begin
  with TXSDate.Create() do
  try
    XSToNative(value); // convert from WideString
    Result := AsDate; // convert to TDate
  finally
    Free();
  end;
end;

class function TIso8601.DateTimeFromIso8601(const Value: string): TDateTime;
begin
  with TXSDateTime.Create() do
  try
    XSToNative(value); // convert from WideString
    Result := AsDateTime; // convert to TDateTime
  finally
    Free();
  end;
end;

class function TIso8601.TimeFromIso8601(const Value: string): TTime;
begin
  with TXSTime.Create() do
  try
    XSToNative(value); // convert from WideString
    Result := AsTime; // convert to TTime
  finally
    Free();
  end;
end;

class function TIso8601.UtcDateTimeToIso8601(const Value: TDateTime): string;
begin
  with TXSDateTime.Create() do
  try
    AsUTCDateTime := Value;
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TUtc.FromUtc(const Value: TDateTime): TDateTime;
var
  Bias: TDateTime;
begin
  Bias := TimeZoneBias;
  Result := Value - TimeZoneBias;
end;

class function TUtc.ToUtc(const Value: TDateTime): TDateTime;
var
  Bias: TDateTime;
begin
  Bias := TimeZoneBias;
  Result := Value + TimeZoneBias;
end;

class function TUtc.UtcNow: TDateTime;
begin
  Result := ToUtc(Now);
end;

class function TToTIso8601.DateTimeToIso8601(const Value: TDateTime): string;
begin
  with TXSDateTime.Create() do
  try
    AsDateTime := Value; // convert from TDateTime
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TToTIso8601.DateToIso8601(const Value: TDate): string;
begin
  with TXSDate.Create() do
  try
    AsDate := Value; // convert from TDate
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TToTIso8601.TimeToIso8601(const Value: TTime): string;
begin
  with TXSTime.Create() do
  try
    AsTime := Value; // convert from TTime
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TToTIso8601.UtcTimeToIso8601(const Value: TTime): string;
begin
  with TXSTime.Create() do
  try
    AsTime := ToUtc(Value);
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

end.</pre></p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6062/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6062/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6062/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6062&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/18/iso-8601-date-time-and-datetime-in-delphi-was-simple-example-to-show-datetime-now-in-iso-8601-format-on-ideone-com-online-c-compiler-debugging-tool/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>some reflections on #Delphi #FireMonkey support for #iOS based on the #FPC compiler that caused quite a surprise</title>
		<link>http://wiert.me/2011/08/17/some-reflections-on-delphi-firemonkey-support-for-ios-based-on-the-fpc-compiler-that-caused-quite-a-surprise/</link>
		<comments>http://wiert.me/2011/08/17/some-reflections-on-delphi-firemonkey-support-for-ios-based-on-the-fpc-compiler-that-caused-quite-a-surprise/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 05:00:12 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6335</guid>
		<description><![CDATA[When looking over a few forums, it seems that the way Delphi XE2 will support FireMonkey on iOS (by using FPC aka the FreePascal Compiler) was very surprising, even for the FPC dev team. Actually, Embarcadero&#8217;s Michael Swindell posted some very interesting reactions on the Lazarus forum and his series of comments on Jon Lennart Aasenden blog entry discussing [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6335&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When looking over a few forums, it seems that the way <a href="http://www.andreanolanusse.com/en/rad-studio-xe2-a-new-era-for-delphi-and-cbuilder-developers/" target="_blank">Delphi XE2</a> will support FireMonkey on iOS (by using FPC aka the <a href="http://www.freepascal.org/" target="_blank">FreePascal</a> Compiler) was very surprising, <a href="http://www.nldelphi.com/forum/showthread.php?t=37696" target="_blank">even for</a> the <a href="http://www.freepascal.org/aboutus.var" target="_blank">FPC dev team</a>.</p>
<p>Actually, Embarcadero&#8217;s <a href="http://www.linkedin.com/profile/view?id=1258691" target="_blank">Michael Swindell</a> posted <a href="http://www.lazarus.freepascal.org/index.php/topic,14158.msg75144.html?PHPSESSID=e0448f611a6efa4076ea95054fbae650#msg75144" target="_blank">some</a> <a href="http://www.lazarus.freepascal.org/index.php/topic,14158.msg75145.html#msg75145" target="_blank">very</a> interesting <a href="http://www.lazarus.freepascal.org/index.php/topic,14158.msg75147.html#msg75147" target="_blank">reactions</a> on the <a href="http://www.lazarus.freepascal.org/index.php" target="_blank">Lazarus</a> <a href="http://www.lazarus.freepascal.org/index.php?action=forum" target="_blank">forum</a> and <a href="http://delphimax.wordpress.com/2011/08/04/delphi-64bit-os-x-and-iphone-native/#comment-743" target="_blank">his</a> <a href="http://delphimax.wordpress.com/2011/08/04/delphi-64bit-os-x-and-iphone-native/#comment-749" target="_blank">series</a> of <a href="http://delphimax.wordpress.com/2011/08/04/delphi-64bit-os-x-and-iphone-native/#comment-750" target="_blank">comments</a> on <a href="http://delphimax.wordpress.com/2011/08/04/delphi-64bit-os-x-and-iphone-native/" target="_blank">Jon Lennart Aasenden blog entry discussing Delphi XE2 and iOS</a>.</p>
<p>Recommended reading!</p>
<p>A lot of pieces of the puzzle fall into place now: <a href="http://blog.marcocantu.com/blog/embarcadero_kdsev_nextgetn.html" target="_blank">Embarcadero aquiring KSDev</a> (that made <a href="http://stackoverflow.com/questions/4157071/dxscene-and-vgscene-with-delphi" target="_blank">DXScene/VXScene</a>), and the <a href="http://wiki.freepascal.org/FPC_New_Features_Trunk" target="_blank">support in FPC 2.5.1 for a more Delphi Language compatible syntax, and Objective Pascal binding to Objective C</a> as <a href="http://web.me.com/macpgmr/ObjP/Xcode4/ObjP_Part6.html#Pascal Language" target="_blank">indicated by Phil Hess</a>. <a href="http://ksdev.com/wiki/index.php?title=IOS_Development" target="_blank">VGScene already supported iOS using FPC in Delphi Mode</a>, as <a href="https://forums.embarcadero.com/message.jspa?messageID=377711#377711" target="_blank">this thread on the embarcadero forums also indicates</a>, so it is logical that FireMonkey does too.</p>
<p>Embarcadero, FreePascal and <a href="http://www.delphifeeds.com/go/s/82954" target="_blank">RemObjects</a> are in parallel (and sometimes cooperation) working on cross platform compiler development.<br />
For the Mobile world, ARM (for iOS) and Java (Android, BlackBerry) are very important.</p>
<p>Clearly, Borland was far ahead of its time when they <a href="http://web.archive.org/web/20050210005535/http://www.undu.com/Articles/980820a.html" target="_blank">demonstrated</a> their <a href="http://www.google.com/search?q=%22dcc32j%22" target="_blank">dcc32j</a> Delphi to <a href="http://en.wikipedia.org/wiki/Java_bytecode" target="_blank">Java bytecode</a> compiler proof of concept at BorCon conferences back when their opening evenents had great videos (I think it was both at <a href="http://www.youtube.com/watch?v=pYDJpHGyW-o" target="_blank">BorCon 1998</a> and <a href="http://www.youtube.com/watch?v=NUoQiCjso5g" target="_blank">BorCon 1997</a>), and not so great shifts (the <a href="http://en.wikipedia.org/wiki/Borland#The_Inprise_years.2C_and_name_changes" target="_blank">Inprise identity crisis</a>).</p>
<p>The same holds for the Sun&#8217;s slogan <a href="http://www.google.com/search?q=f&amp;q=%22the+network+is+the+computer%22" target="_blank">&#8220;the network is the computer&#8221;</a> (actually by <a href="http://en.wikipedia.org/wiki/John_Gage" target="_blank">John Gage</a>): basically that was about predecessors of <a href="http://en.wikipedia.org/wiki/Cloud_computing" target="_blank">Cloud computing</a>.</p>
<p>Things from the past come back, sometimes presented as &#8220;new&#8221;, a few (partially from this <a href="http://programmers.stackexchange.com/questions/96770/what-features-contributed-to-the-evolution-of-pascal" target="_blank">Evolution of Pascal programmers.stackexchange.com thread</a>):</p>
<ul>
<li>The <a href="http://en.wikipedia.org/wiki/P-code_machine" target="_blank">p-code</a> and <a href="http://en.wikipedia.org/wiki/Smalltalk#Just-in-time_compilation" target="_blank">Smalltalk virtual machine just in time compilation</a> from the 70s and 80s  systems were far ahead of the <a href="http://en.wikipedia.org/wiki/Java_Virtual_Machine" target="_blank">Java VM</a> from the 90s and <a href="http://en.wikipedia.org/wiki/Common_Language_Runtime" target="_blank">.NET CLR</a> from early this century.<br />
The fun is that p-code already had support for multiple languages, which Java bytecode didn&#8217;t have at first, and .NET CLR had from the beginning.<br />
And I love the &#8220;<a title="A Brief, Incomplete, and Mostly Wrong History of Programming Languages" href="http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html" target="_blank">A Brief, Incomplete, and Mostly Wrong History of Programming Languages</a>&#8221; description of novelty for Java and C# <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li><a href="http://en.wikipedia.org/wiki/Xml" target="_blank">XML</a> being a text based <a href="http://en.wikipedia.org/wiki/Key-value_pair" target="_blank">key value</a> system (or even <a href="http://en.wikipedia.org/wiki/INI_file" target="_blank">INI</a> or <a href="http://en.wikipedia.org/wiki/Comma-separated_values" target="_blank">CSV</a> files) on steroids</li>
<li><a href="http://en.wikipedia.org/wiki/Web_service" target="_blank">WebService</a>s being a form of stateless <a href="http://en.wikipedia.org/wiki/Corba" target="_blank">CORBA</a> without many bells and whistles (that later got re-added because businesses do need bells and whistles)</li>
<li><a href="http://en.wikipedia.org/wiki/App" target="_blank">Apps on mobile devices</a> being a reincarnation of <a href="http://en.wikipedia.org/wiki/Client%E2%80%93server_model" target="_blank">client-server model</a> systems</li>
<li>The 1970s SCCM layered by the 1990s <a href="http://en.wikipedia.org/wiki/Source_Code_Control_System" target="_blank">TeamWare</a> and <a href="http://en.wikipedia.org/wiki/BitKeeper" target="_blank">BitKeeper</a> are great distributed <a href="http://en.wikipedia.org/wiki/Revision_control" target="_blank">revision control system</a>s, for ahead of current <a href="http://en.wikipedia.org/wiki/Distributed_revision_control" target="_blank">distributed revision control systems</a><br />
(it is fun to see that <a href="http://www.delphifeeds.com/go/s/82954" target="_blank">RemObjects now uses git</a>)</li>
</ul>
<p>All of those are (partial repetitions) of technologies that help you build systems. The trick is how to be able to quickly learn and apply those technologies (as opposed to add a bunch of <a href="http://en.wikipedia.org/wiki/Three-letter_acronym" target="_blank">TLA</a>s or <a href="http://en.wikipedia.org/wiki/Four-letter_abbreviation" target="_blank">FLAB</a>s wich are about the only thing that most modern &#8220;recruiters&#8221; use to match <a href="http://en.wikipedia.org/wiki/R%C3%A9sum%C3%A9" target="_blank">résumé</a>s/<a href="http://en.wikipedia.org/wiki/Curriculum_vitae" target="_blank">CV</a>s to positions).</p>
<p>Some of the things above have died, or are not in wide use any more.<br />
That is OK: Life can&#8217;t have ups without having downs, and without some form of long wavelength repetitions: that&#8217;s what makes the journey so interesting (just think about the financial markets, there will be good times&#8230;).</p>
<p>Using FPC for iOS opens the road to develop applications using a very productive environment consisting of the Delphi IDE and the FPC compiler in a short while from now.</p>
<p>&#8211;jeroen</p>
<p>PS: two more events that I will be attending and/or speaking:</p>
<ul>
<li>The Delphi <a href="http://www.embarcadero.com/world-tour" target="_blank">Rad Studio XE2 World Tour</a> event in Brussels on September 8th 2011 (<a href="http://forms.embarcadero.com/forms/EMBENELUXRADWorldTourevent" target="_blank">Embarcadero link</a>; <a href="http://www.barnsten.com/events/details?events_id=10" target="_blank">Barnsten link</a>) at the Novotel Brussels Airport hotel.</li>
<li>The Delphi Tage</li>
</ul>
<div>PS2: Now it probably is more clear why I <a href="http://wiert.wordpress.com/2010/12/24/switchresx-helped-me-switch-my-mac-machine-to-1360x768-and-1888x1062/" target="_blank">bought and installed my Mac Mini Server last year</a> :)</div>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/java/'>Java</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6335/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6335/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6335/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6335&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/17/some-reflections-on-delphi-firemonkey-support-for-ios-based-on-the-fpc-compiler-that-caused-quite-a-surprise/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Back to the 80s: Apple Pascal on the Lisa Machine</title>
		<link>http://wiert.me/2011/08/15/back-to-the-80s-apple-pascal-on-the-lisa-machine/</link>
		<comments>http://wiert.me/2011/08/15/back-to-the-80s-apple-pascal-on-the-lisa-machine/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 17:00:29 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6350</guid>
		<description><![CDATA[Talking about Pascal history: Index of /pdf/apple/lisa/pascal_monitor. That was then, soon it will become easy to write Pascal apps for Apple iOS using Delphi XE2 &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6350&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Talking about Pascal history: <a href="http://bitsavers.org/pdf/apple/lisa/pascal_monitor/">Index of /pdf/apple/lisa/pascal_monitor</a>.</p>
<p>That was then, soon it will become easy to write Pascal apps for Apple iOS using Delphi XE2 <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6350/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6350&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/15/back-to-the-80s-apple-pascal-on-the-lisa-machine/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Tomazy&#8217;s Software Development Blog: Testing modal windows in Delphi</title>
		<link>http://wiert.me/2011/08/14/tomazys-software-development-blog-testing-modal-windows-in-delphi/</link>
		<comments>http://wiert.me/2011/08/14/tomazys-software-development-blog-testing-modal-windows-in-delphi/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 09:12:10 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6336</guid>
		<description><![CDATA[Tomazy&#8217;s Software Development Blog: Testing modal windows in Delphi. Recommended reading! &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6336&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.tomazy.com/2011/08/testing-modal-windows-in-delphi.html">Tomazy&#8217;s Software Development Blog: Testing modal windows in Delphi</a>.</p>
<p>Recommended reading!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6336/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6336&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/14/tomazys-software-development-blog-testing-modal-windows-in-delphi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows authorization: Adding/Removing users from local groups</title>
		<link>http://wiert.me/2011/08/10/windows-authorization-addingremoving-users-from-local-groups/</link>
		<comments>http://wiert.me/2011/08/10/windows-authorization-addingremoving-users-from-local-groups/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 05:00:51 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[CommandLine]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5927</guid>
		<description><![CDATA[Though there are API ways to add users to local groups in Delphi, you need the JwaLmAccess unit from the JEDI API library project to import those. Sometimes that is not feasible, and sometimes you want to just script things. For those, you can use the Windows net localgroup command (if you have sufficient privileges, you can even [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5927&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Though there are <a href="http://stackoverflow.com/questions/1584275/add-current-selected-user-to-a-group" target="_blank">API ways to add users to local groups in Delphi</a>, you need the <a href="https://encrypted.google.com/search?q=JwaLmAccess" target="_blank">JwaLmAccess unit</a> from the <a href="http://sourceforge.net/projects/jedi-apilib/" target="_blank">JEDI API library project</a> to import those.</p>
<p>Sometimes that is not feasible, and sometimes you want to just script things.</p>
<p>For those, you can use the Windows <a href="http://technet.microsoft.com/en-us/library/bb490706.aspx" target="_blank">net localgroup</a> command (if you have sufficient privileges, you can even apply it to the local groups on your domain controller by appending it with the <span style="text-decoration:underline;">/domain</span> parameter, or use the <a href="http://technet.microsoft.com/en-us/library/bb490703.aspx" target="_blank">net group /domain</a> command to execute on global domain groups instead of local groups).</p>
<p>Sample of using this in a cmd script:</p>
<p><pre class="brush: plain;">
net localgroup Guests Me Myself I ACME\BugsBunny /delete
</pre></p>
<p>It will remove the local users <span style="text-decoration:underline;">Me</span>, <span style="text-decoration:underline;">MySelf</span> and <span style="text-decoration:underline;">I</span>, and remove the domain user <span style="text-decoration:underline;">ACME\BugsBunny</span> from the local group <span style="text-decoration:underline;">Guests</span>.</p>
<p>Sample source of using this in Delphi:<span id="more-5927"></span></p>
<p><pre class="brush: delphi;">
program ADConsoleProject;

{$APPTYPE CONSOLE}

uses
  ShellUnit in '..\src\ShellUnit.pas',
  LocalGroupUnit in '..\src\LocalGroupUnit.pas';
begin
  RemoveUsersFromLocalGroup(GuestsLocalGroup, ['Me', 'Myself', 'I', 'ACME\BugsBunny']);
end.
</pre></p>
<p>These are the underlying Delphi units:</p>
<p>LocalGroupUnit: the implementation for AddUsersToLocalGroup and RemoveUsersFromLocalGroup.</p>
<p><pre class="brush: delphi;">
unit LocalGroupUnit;

interface

const
  GuestsLocalGroup = 'Guests'; // do not translate
  AdministratorsLocalGroup = 'Administrators'; // do not translate

procedure AddUsersToLocalGroup(const LocalGroup: string; const Users: array of string);

procedure RemoveUsersFromLocalGroup(const LocalGroup: string; const Users: array of string);

implementation

uses
  SysUtils, ShellUnit, Windows;

const
  AddToLocalGroupComand = 'net localgroup %s %s /add';
  RemoveFromLocalGroupComand = 'net localgroup %s %s /delete';

// alternative: http://stackoverflow.com/questions/1584275/add-current-selected-user-to-a-group
procedure AddUsersToLocalGroup(const LocalGroup: string; const Users: array of string);
var
  Command: string;
  User: string;
begin
  for User in Users do
  begin
    Command := Format(AddToLocalGroupComand, [LocalGroup, User]);
    RunProcessAndWait(Command, SW_NORMAL, False, nil);
  end;
end;

procedure RemoveUsersFromLocalGroup(const LocalGroup: string; const Users: array of string);
var
  Command: string;
  User: string;
  Result: LongWord;
begin
  for User in Users do
  begin
    Command := Format(RemoveFromLocalGroupComand, [LocalGroup, User]);
    RunProcessAndWait(Command, SW_NORMAL, False, nil);
  end;
end;

end.
</pre></p>
<p>ShellUnit (it also contains some other parts I recently needed: shell folders):</p>
<p><pre class="brush: delphi;">
unit ShellUnit;

interface

uses
  ShlObj, Windows;

function GetSystemPath(Folder: Integer): string;

type
  TShellFolders = array[1..39] of Integer;

const
  ShellFolders: TShellFolders = (
    CSIDL_DESKTOP,
    CSIDL_INTERNET,
    CSIDL_PROGRAMS,
    CSIDL_CONTROLS,
    CSIDL_PRINTERS,
    CSIDL_PERSONAL,
    CSIDL_FAVORITES,
    CSIDL_STARTUP,
    CSIDL_RECENT,
    CSIDL_SENDTO,
    CSIDL_BITBUCKET,
    CSIDL_STARTMENU,
    CSIDL_DESKTOPDIRECTORY,
    CSIDL_DRIVES,
    CSIDL_NETWORK,
    CSIDL_NETHOOD,
    CSIDL_FONTS,
    CSIDL_TEMPLATES,
    CSIDL_COMMON_STARTMENU,
    CSIDL_COMMON_PROGRAMS,
    CSIDL_COMMON_STARTUP,
    CSIDL_COMMON_DESKTOPDIRECTORY,
    CSIDL_APPDATA,
    CSIDL_PRINTHOOD,
    CSIDL_LOCAL_APPDATA,
    CSIDL_ALTSTARTUP,
    CSIDL_COMMON_ALTSTARTUP,
    CSIDL_COMMON_FAVORITES,
    CSIDL_INTERNET_CACHE,
    CSIDL_COOKIES,
    CSIDL_HISTORY,
    CSIDL_PROFILE,
    CSIDL_CONNECTIONS,
    CSIDL_COMMON_MUSIC,
    CSIDL_COMMON_PICTURES,
    CSIDL_COMMON_VIDEO,
    CSIDL_CDBURN_AREA,
    CSIDL_COMPUTERSNEARME,
    CSIDL_PROFILES
  );

function RunProcessAndWait(const FileName: string; const ShowCmd: DWORD; const wait: Boolean; const ProcID: PDWORD): Longword;

implementation

uses
  SysUtils,
  Forms,
  ActiveX,
  ComObj;

// http://www.scalabium.com/faq/dct0106.htm
// http://www.delphipages.com/forum/showthread.php?t=158704
function GetSystemPath(Folder: Integer): string;
var
  ItemIDList: PItemIDList;
  AMalloc: IMalloc;
begin
  if SHGetMalloc(AMalloc) = NOERROR then
  begin
    ItemIDList := nil;
    OleCheck(SHGetSpecialFolderLocation(Application.Handle, Folder, ItemIDList));
    try
      SetLength(Result, MAX_PATH);
      SHGetPathFromIDList(ItemIDList, PChar(Result));
      SetLength(Result, Length(PChar(Result)));
    finally
      AMalloc.Free(ItemIDList);
    end;
  end;
end;

// http://www.codeguru.com/forum/archive/index.php/t-235106.html
// http://sites.google.com/site/delphibasics/home/delphibasicssnippets/createprocessandwaitforexit
// http://stackoverflow.com/questions/268208/delphi-gracefully-closing-created-process-in-service-using-tprocess-createp
// http://www.codeproject.com/KB/winsdk/runsilent.aspx
function RunProcessAndWait(const FileName: string; const ShowCmd: DWORD; const wait: Boolean; const ProcID: PDWORD): LongWord;
var
  StartupInfo: TStartupInfo;
  ProcessInfo: TProcessInformation;
begin
  FillChar(StartupInfo, SizeOf(StartupInfo), #0);
  StartupInfo.cb := SizeOf(StartupInfo);
  StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
  StartupInfo.wShowWindow := ShowCmd;
  if not CreateProcess(nil,
    @Filename[1],
    nil,
    nil,
    False,
    NORMAL_PRIORITY_CLASS,
    nil,
    nil,
    StartupInfo,
    ProcessInfo)
  then
    Result := WAIT_FAILED
  else
  begin
    if wait = FALSE then
    begin
      if ProcID &lt;&gt; nil then
        ProcID^ := ProcessInfo.dwProcessId;
      result := WAIT_FAILED;
      exit;
    end;
    WaitForSingleObject(ProcessInfo.hProcess, INFINITE);
    GetExitCodeProcess(ProcessInfo.hProcess, Result); // should always succeed as the process has exited
  end;
  if ProcessInfo.hProcess &lt;&gt; 0 then
    CloseHandle(ProcessInfo.hProcess);
  if ProcessInfo.hThread &lt;&gt; 0 then
    CloseHandle(ProcessInfo.hThread);
end;

end.
</pre><br />
<pre class="brush: delphi;">
</pre></p>
<p>As an added bonus, this will list the local groups on your domain controller if you have enough rights to read those:</p>
<p><pre class="brush: plain;">
net localgroup /domain
</pre></p>
<p>&#8211;jeroen</p>
<p>PS: As a reminder to self, some other handy commands like NET, DSTOOLS, NETSH, NETDOM, WMIC, PSTOOLS, et cetera are <a href="http://www.robvanderwoude.com/ntadmincommands.php" target="_blank">described by Rob van der Woude</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/commandline/'>CommandLine</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5927/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5927/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5927&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/10/windows-authorization-addingremoving-users-from-local-groups/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Speaking at DelphiLive! 2011 in San Jose, CA, USA from September 12th to 14th 2011</title>
		<link>http://wiert.me/2011/08/04/speaking-at-delphilive-2011-in-san-jose-ca-usa-from-september-12th-to-14th-2011/</link>
		<comments>http://wiert.me/2011/08/04/speaking-at-delphilive-2011-in-san-jose-ca-usa-from-september-12th-to-14th-2011/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 19:00:14 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[DelphiLive]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6302</guid>
		<description><![CDATA[I&#8217;ll be speaking at a few conferences this fall. The furthest for me will be DelphiLive! 2011 in San Jose, CA, which will be held from September 12th to 14th (slightly more than a month from now). Note that if you want to come, the early bird discount is until augusts 15! Part of the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6302&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be speaking at a few conferences this fall.</p>
<p>The furthest for me will be <a href="http://delphilive.com/2011" target="_blank">DelphiLive! 2011</a> in San Jose, CA, which will be held from September 12th to 14th (slightly more than a month from now).</p>
<p>Note that if you want to come, the <a href="http://delphilive2011.eventbrite.com/" target="_blank">early bird discount</a> is until augusts 15!</p>
<p>Part of the <a href="http://delphilive.com/2011/sessions/" target="_blank">sessions</a> and <a href="http://delphilive.com/2011/speaker/" target="_blank">speakers</a> lists are already published, but it will be extended shortly (some nice <a href="http://www.andreanolanusse.com/en/rad-studio-xe2-a-new-era-for-delphi-and-cbuilder-developers/" target="_blank">Delphi XE2</a> sessions are in the pipeline), followed by a <a href="http://delphilive.com/2011/tutorials/" target="_blank">workshop tutorials list</a>, and <a href="http://delphilive.com/2011/timetable" target="_blank">agenda</a>.</p>
<p><a href="http://delphilive.com/2011/speaker/#171" target="_blank">My sessions</a> are going to be these:</p>
<ul>
<li>Session: <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19994" target="_blank">Delphi and XML</a></li>
<li>Session: <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19993" target="_blank">XSLT: transforming XML</a></li>
<li>Workshop: <a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=delphilive2011&amp;id=19989" target="_blank">Preparing for the Delphi Developer Certification Exam</a></li>
</ul>
<p><strong>Not everything for those sessions is set in stone yet, so if you have ideas for things I should include, exclude, emphasize or understate, please let me know.</strong></p>
<p>I&#8217;m looking forward to meet (often again!) a lot of attendees and speakers.</p>
<p>The social part of conferences is very important too.<br />
Last year, after the conference, a few speakers, attendees and other people had a marvelous steak dinner. Great fun!</p>
<p>Hope to see a few of my blog readers at one conference or the other.</p>
<p>&#8211;jeroen</p>
<p>PS: <a href="http://delphilive.com/2010" target="_blank">Like last year</a>, the conference will be held at <a href="http://delphilive.com/2011/location/" target="_blank">Crowne Plaza Hotel San Jose Downtown</a>, 282 Almaden Boulevard, San Jose, CA 95113, USA (it has a special room rate of USD 139 per night for conference attendees).</p>
<p>PS2: Some more events will follow shortly.</p>
<br />Filed under: <a href='http://wiert.me/category/event/conferences/'>Conferences</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/event/conferences/delphilive/'>DelphiLive</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/event/'>Event</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6302/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6302/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6302/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6302&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/04/speaking-at-delphilive-2011-in-san-jose-ca-usa-from-september-12th-to-14th-2011/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Text displayed in some core fonts appears blurred in Internet Explorer 9 on a computer that is running Windows Vista, Windows Server 2008, Windows 7, or Windows Server 2008 R2</title>
		<link>http://wiert.me/2011/08/02/text-displayed-in-some-core-fonts-appears-blurred-in-internet-explorer-9-on-a-computer-that-is-running-windows-vista-windows-server-2008-windows-7-or-windows-server-2008-r2/</link>
		<comments>http://wiert.me/2011/08/02/text-displayed-in-some-core-fonts-appears-blurred-in-internet-explorer-9-on-a-computer-that-is-running-windows-vista-windows-server-2008-windows-7-or-windows-server-2008-r2/#comments</comments>
		<pubDate>Tue, 02 Aug 2011 05:00:07 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Font]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=6020</guid>
		<description><![CDATA[Right now there are so many ways to display text, that &#8211; depending on your physical display (CRT, LCD, etc) &#8211; all behave differently. Even Microsoft has released a patch (see the below quote from KB 2545698 that got released last month). This issue occurs because of a design change to how Internet Explorer 9 renders [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6020&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Right now there are so many ways to display text, that &#8211; depending on your physical display (CRT, LCD, etc) &#8211; all behave differently.</p>
<p>Even Microsoft has released a patch (see the below quote from <a href="http://support.microsoft.com/kb/2545698" target="_blank">KB 2545698</a> that got released last month).</p>
<blockquote><p>This issue occurs because of a design change to how Internet Explorer 9 renders text. By default, Internet Explorer 9 uses sub-pixel positioned ClearType to render text by using DirectWrite, whereas Internet Explorer 8 uses whole-pixel positioned ClearType to render text by using the Microsoft Windows graphics device interface (GDI).</p></blockquote>
<p>I&#8217;m wondering if there is a way to make it work &#8216;right&#8217; on every type of display combination.</p>
<p>Do you know any?</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://support.microsoft.com/kb/2545698">Text displayed in some core fonts appears blurred in Internet Explorer 9 on a computer that is running Windows Vista, Windows Server 2008, Windows 7, or Windows Server 2008 R2</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/font/'>Font</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/6020/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/6020/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/6020/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=6020&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/08/02/text-displayed-in-some-core-fonts-appears-blurred-in-internet-explorer-9-on-a-computer-that-is-running-windows-vista-windows-server-2008-windows-7-or-windows-server-2008-r2/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Marco Cantu&#8217;s Delphi XE Handbook Available in print and electronically</title>
		<link>http://wiert.me/2011/07/27/marco-cantus-delphi-xe-handbook-available-in-print-and-electronically/</link>
		<comments>http://wiert.me/2011/07/27/marco-cantus-delphi-xe-handbook-available-in-print-and-electronically/#comments</comments>
		<pubDate>Wed, 27 Jul 2011 05:00:38 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5959</guid>
		<description><![CDATA[Having proofread, I&#8217;m really glad that Marco Cantu recently announced that Delphi XE Handbook to be Available in both print and electronic forms. Note that since the announcement, you can also get the Handbooks Collection in PDF form for something like EUR 55. His books are always a pleasure to read, so: Great work Marco! &#8211;jeroen Filed [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5959&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Having proofread, I&#8217;m really glad that <a href="http://www.marcocantu.com/" target="_blank">Marco Cantu</a> recently announced that <a href="http://blog.marcocantu.com/blog/delphi_xe_handbook_available.html">Delphi XE Handbook to be Available</a> in both print and electronic forms.</p>
<p>Note that since the announcement, you can also get the <a href="http://www.marcocantu.com/handbooks/#collection" target="_blank">Handbooks Collection</a> in <a href="http://sites.fastspring.com/wintechitalia/product/delphihandbookscollection" target="_blank">PDF form</a> for something like EUR 55.</p>
<p>His books are always a pleasure to read, so: Great work Marco!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5959/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5959&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/27/marco-cantus-delphi-xe-handbook-available-in-print-and-electronically/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>WebSphere MQ and Delphi</title>
		<link>http://wiert.me/2011/07/21/websphere-mq-and-delphi/</link>
		<comments>http://wiert.me/2011/07/21/websphere-mq-and-delphi/#comments</comments>
		<pubDate>Thu, 21 Jul 2011 05:00:00 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5945</guid>
		<description><![CDATA[On my research list: WebSphere MQ and Delphi. The funny thing is that this Delphi MQ Series question on StackOverflow that I answered actually helped me to get going A few interesting links: IBM provided Delphi unit for WebSphere MQ Serie (PDF documentation, ZIP file with source) Delphi related threads on MQSeries.net Repository with links [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5945&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>On my research list: <a href="https://encrypted.google.com/search?q=websphere+mq+delphi" target="_blank">WebSphere MQ and Delphi</a>.</p>
<p>The funny thing is that this <a href="http://stackoverflow.com/questions/3006925/mqseries-and-delphi" target="_blank">Delphi MQ Series question on StackOverflow</a> that <a href="http://stackoverflow.com/questions/3006925/mqseries-and-delphi/3013941#3013941" target="_blank">I answered</a> actually helped me to get going <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>A few interesting links:</p>
<ul>
<li><a href="http://www-01.ibm.com/support/docview.wss?uid=swg24007060" target="_blank">IBM provided Delphi unit for WebSphere MQ Serie</a> (<a href="ftp://public.dhe.ibm.com/software/integration/support/supportpacs/individual/ma7q.pdf" target="_blank">PDF documentation</a>, <a href="ftp://public.dhe.ibm.com/software/integration/support/supportpacs/individual/ma7q.zip" target="_blank">ZIP file with source</a>)</li>
<li><a href="https://encrypted.google.com/search?q=delphi+site:www.mqseries.net" target="_blank">Delphi related threads on MQSeries.net</a></li>
<li><a href="http://www.mqseries.net/repository.html" target="_blank">Repository with links to documentation, fixpacks, etc on MQSeries.net</a></li>
</ul>
<p>The research actually is focussed to replace a <a href="http://en.wikipedia.org/wiki/IBM_Advanced_Program-to-Program_Communication" target="_blank">APPC</a>/<a href="http://en.wikipedia.org/wiki/Common_Programming_Interface_for_Communications" target="_blank">CPI-C</a> session based solution that runs on top of <a href="http://en.wikipedia.org/wiki/IBM_Systems_Network_Architecture" target="_blank">SNA</a> using <a href="http://en.wikipedia.org/wiki/IBM_LU6.2" target="_blank">LU 6.2</a> endpoints and has round-trip response times between 50 and 150 milliseconds with a WebSphere MQ based solution having similar performance characteristics. It binds multiple client applications to multiple function entries on the AS/400 systems at the client.</p>
<p>The current APPC/CPI-C part is written either both a DLL and EXE in Delphi (depending on how it is used), hence the Delphi part of the research.</p>
<p>In many organizations, <a href="http://en.wikipedia.org/wiki/IBM_WebSphere_MQ" target="_blank">WebSphere MQ</a> (aka MQSeries) is part of their <a href="http://en.wikipedia.org/wiki/Enterprise_service_bus" target="_blank">Enterprise Service Bus</a>. In that regard, the SNA solution was far a ahead of its time.</p>
<p>BTW: Back then (almost 15 years ago), the SNA solution started out as solution using <a href="http://www2.systeminetwork.com/resources/clubtech/TNT400/bo400ng/as400dataqs.htm" target="_blank">AS/400 Data Queues</a>. Even after months of trying, that didn&#8217;t work well because the mixed environment of <a href="http://forums.systeminetwork.com/isnetforums/showthread.php?t=46321" target="_blank">NetSoft Router</a>, <a href="http://en.wikipedia.org/wiki/AS/400" target="_blank">AS/400</a>, <a href="http://en.wikipedia.org/wiki/SNA_Server" target="_blank">SNA Server</a> and <a href="http://en.wikipedia.org/wiki/Windows_NT_4.0" target="_blank">Windows NT 4</a> in a pretty big <a href="http://en.wikipedia.org/wiki/Wide_area_network" target="_blank">WAN</a> had huge problems.<br />
Somehow, one of the layers forced sessions to always use 2 connections at a time, which was causing huge problems when those were routed through different SNA servers. That routing was unpredictable (and it was not possible to disable/force it to use stick to one SNA server). In addition, it was memory and CPU hungry on the PC side (when you were glad to have a <a href="http://en.wikipedia.org/wiki/Pentium_MMX#MMX" target="_blank">Pentium MMX</a> based CPU with 32 MB RAM, it ate 20+% of the CPU power, and 25+% of the memory per session, peaking to 100% CPU and 50% of RAM per session).<br />
Specialists from all involved parties weren&#8217;t able to pinpoint the actual cause, so we went <a href="http://www.francome.com/sna.html#osi" target="_blank">a few steps down on the OSI layer</a> to the APPC leve.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5945/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5945/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5945/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5945&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/21/websphere-mq-and-delphi/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>File extension parameters do include a dot</title>
		<link>http://wiert.me/2011/07/20/file-extension-parameters-do-include-a-dot/</link>
		<comments>http://wiert.me/2011/07/20/file-extension-parameters-do-include-a-dot/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 05:00:52 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5940</guid>
		<description><![CDATA[This is from a long time ago, but still fun: Sometimes simple things in life are hard do remember. For instance, I always forgot if a file extension parameter should have a dot in it or not. Normally it should! But for clearing an extension, you should use a blank string. Be aware though that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5940&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is from a long time ago, but still fun:</p>
<p>Sometimes simple things in life are hard do remember.</p>
<p>For instance, I always forgot if a file extension parameter should have a dot in it or not.</p>
<p>Normally it should!</p>
<p>But for clearing an extension, you should use a blank string.</p>
<p>Be aware though that empty extensions look differently depending where in the process you look at them:</p>
<p>C# example:</p>
<p><pre class="brush: csharp;">
using System;
using System.IO;
public class Test
{
        public static void Main()
        {
                string extensionLess = Path.ChangeExtension(@&quot;C:\mydir\myfile.com.extension&quot;, &quot;&quot;);
                Console.WriteLine(extensionLess);
                string extension = Path.GetExtension(extensionLess);
                Console.WriteLine(extension);
        }
}
</pre></p>
<p>Outputs:</p>
<p><pre class="brush: plain;">
C:\mydir\myfile.com.

</pre></p>
<p>Delphi example:</p>
<p><pre class="brush: delphi;">
program Demo;
{$APPTYPE CONSOLE}
uses
  SysUtils;
var
  extensionLess: string;
  extension: string;
begin
  extensionLess := ChangeFileExt('C:\mydir\myfile.com.extension', '');
  Writeln(extensionLess);
  extension := ExtractFileExt(extensionLess);
  Writeln(extension);
end.
</pre></p>
<p>Outputs:</p>
<p><pre class="brush: plain;">
C:\mydir\myfile.com
.com
</pre></p>
<p>Don&#8217;t you love differences in your platforms <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5940/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5940/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5940/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5940&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/20/file-extension-parameters-do-include-a-dot/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>ISO 8601: Delphi way to convert XML date and time to TDateTime and back (via: Stack Overflow)</title>
		<link>http://wiert.me/2011/07/19/iso-8601-delphi-way-to-convert-xml-date-and-time-to-tdatetime-and-back-via-stack-overflow/</link>
		<comments>http://wiert.me/2011/07/19/iso-8601-delphi-way-to-convert-xml-date-and-time-to-tdatetime-and-back-via-stack-overflow/#comments</comments>
		<pubDate>Tue, 19 Jul 2011 05:00:35 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5936</guid>
		<description><![CDATA[Recently I needed a way of concerting back and forth ISO 8601 DateTime values used in XML from Delphi. Thoug the Delphi DateUtils unit has some ISO 8601 features for calculating week numbers, you actually need to the XSBuiltIns unit for converting back and forth to ISO 8601 text representation of a DateTime. I remembered [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5936&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently I needed a way of concerting back and forth <a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dateTime" target="_blank">ISO 8601 DateTime values used in XML</a> from Delphi.</p>
<p>Thoug the Delphi <a href="http://docwiki.embarcadero.com/VCL/en/DateUtils" target="_blank">DateUtils unit</a> has some ISO 8601 features for calculating week numbers, you actually need to the <a href="http://docwiki.embarcadero.com/VCL/en/XSBuiltIns" target="_blank">XSBuiltIns unit</a> for converting back and forth to ISO 8601 text representation of a DateTime.</p>
<p>I remembered <a href="http://stackoverflow.com/questions/1438870/in-delphi-is-there-a-function-to-convert-xml-date-and-time-to-tdatetime/1439154#1439154" target="_blank">answering</a> the related <a href="http://stackoverflow.com/questions/1438870/in-delphi-is-there-a-function-to-convert-xml-date-and-time-to-tdatetime">In Delphi is there a function to convert XML date and time to TDateTime</a> question on StackOverflow a while ago (and forgot that this was back in 2009 &lt;g&gt;).</p>
<p><a href="http://en.wikipedia.org/wiki/ISO_8601" target="_blank">ISO 8601</a> dates can either include a <a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dateTime-timezones" target="_blank">time-zone</a>, or be in <a href="http://en.wikipedia.org/wiki/UTC" target="_blank">UTC</a>, which is not part of that answer. So lets elaborate on that answer a bit now:</p>
<p>UTC times in ISO 8601 format end in a Z time zone designator like this:</p>
<pre>    &lt;Created&gt;2011-06-29T17:01:45.505Z&lt;/Created&gt;</pre>
<p>The Z UTC indicator is basically a shortcut for a timezone offset of +00:00 or -00:00, effectively being a zero (or <a href="http://www.timeanddate.com/library/abbreviations/timezones/military/z.html" target="_blank">zulu</a>) timezone.</p>
<p>Nonzero timezones start with an optional + or -, followed by the hours and minutes offset from UTC, for instance +01:00 for the <a href="http://en.wikipedia.org/wiki/Central_European_Time" target="_blank">Central European Time</a> zone.</p>
<pre>    &lt;Created&gt;2011-06-29T17:01:45.505+01:00&lt;/Created&gt;</pre>
<p>When you want historical time zones, then you need the <a href="http://code.google.com/p/delphi-tzdb/" target="_blank">Delphi TZDB interface</a> to the historical TZ database.</p>
<p>To do the timezone calculations, I used the TimeZoneBias function from Indy, which is either in the IdGlobal unit (Indy &lt;= version 9) or the IdGlobalProtocols unit (Indy 10 and up).</p>
<p>Conversion is done by using the TXSDateTime (that like all the XS conversion classes descends from <a href="http://docwiki.embarcadero.com/VCL/XE/en/InvokeRegistry.TRemotableXS" target="_blank">TRemotableXS</a> in the <a href="http://docwiki.embarcadero.com/VCL/XE/en/InvokeRegistry" target="_blank">InvokeRegistry unit</a>).</p>
<p>Most of the classes descending from TRemotableXS contain two methods: <a href="http://docwiki.embarcadero.com/VCL/XE/en/InvokeRegistry.TRemotableXS.NativeToXS" target="_blank">NativeToXS</a> and <a href="http://docwiki.embarcadero.com/VCL/XE/en/InvokeRegistry.TRemotableXS.XSToNative" target="_blank">XSToNative</a> doing the underlying conversions.</p>
<p>Since I didn&#8217;t need the historical reference in the TZDB, this is the code that I came up with:</p>
<p><pre class="brush: delphi;">
unit Iso8601Unit;

interface

type
  TIso8601 = class(TObject)
  public
    class function DateTimeFromIso8601(const Value: string): TDateTime; static;
    class function UtcDateTimeToIso8601(const Value: TDateTime): string; static;
    class function DateTimeToIso8601(const Value: TDateTime): string; static;
    class function UtcNow: TDateTime; static;
    class function ToUtc(const Value: TDateTime): TDateTime; static;
    class function FromUtc(const Value: TDateTime): TDateTime; static;
  end;

implementation

uses
  IdGlobalProtocols, {IdGlobal for Index   SysUtils,
  XSBuiltIns;

class function TIso8601.DateTimeFromIso8601(const Value: string): TDateTime;
begin
  with TXSDateTime.Create() do
  try
    XSToNative(value); // convert from WideString
    Result := AsDateTime; // convert to TDateTime  finally
  finally
    Free();
  end;
end;

class function TIso8601.UtcDateTimeToIso8601(const Value: TDateTime): string;
begin
  with TXSDateTime.Create() do
  try
    AsUTCDateTime := Value;
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TIso8601.DateTimeToIso8601(const Value: TDateTime): string;
begin
  with TXSDateTime.Create() do
  try
    AsDateTime := Value; // convert from TDateTime
    Result := NativeToXS; // convert to WideString
  finally
    Free();
  end;
end;

class function TIso8601.UtcNow: TDateTime;
begin
  Result := ToUtc(Now);
end;

class function TIso8601.ToUtc(const Value: TDateTime): TDateTime;
var
  Bias: TDateTime;
begin
  Bias := TimeZoneBias;
  Result := Value + TimeZoneBias;
end;

class function TIso8601.FromUtc(const Value: TDateTime): TDateTime;
var
  Bias: TDateTime;
begin
  Bias := TimeZoneBias;
  Result := Value - TimeZoneBias;
end;

end.</pre></p>
<p>&#8211;jeroen</p>
<p>via <a href="http://stackoverflow.com/questions/1438870/in-delphi-is-there-a-function-to-convert-xml-date-and-time-to-tdatetime">In Delphi is there a function to convert XML date and time to TDateTime &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5936/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5936/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5936/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5936&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/19/iso-8601-delphi-way-to-convert-xml-date-and-time-to-tdatetime-and-back-via-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi commandline oddity with double-quoted arguments</title>
		<link>http://wiert.me/2011/07/14/delphi-commandline-oddity-with-double-quoted-arguments/</link>
		<comments>http://wiert.me/2011/07/14/delphi-commandline-oddity-with-double-quoted-arguments/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 05:00:11 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5933</guid>
		<description><![CDATA[Boy, I was wrong. Somewhere in the back of my head I knew it. ParamStr goes from zero (the name of the EXE) through ParamCount (the last parameter). Duh &#160; I&#8217;ll keep this so you can have a good laugh: &#160; When you add double quoted arguments to the commandline of your Delphi app, strange [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5933&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Boy, I was wrong. Somewhere in the back of my head I knew it.</p>
<p>ParamStr goes from zero (the name of the EXE) through ParamCount (the last parameter). Duh <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p>I&#8217;ll keep this so you can have a good laugh:</p>
<p>&nbsp;</p>
<p>When you add double quoted arguments to the commandline of your Delphi app, strange things can happen: the first parameter seems to be gone, while it is there.</p>
<p>It appears that the <a href="http://docwiki.embarcadero.com/VCL/en/System.ParamCount" target="_blank">ParamCount</a>/<a href="http://docwiki.embarcadero.com/VCL/en/System.ParamStr" target="_blank">ParamStr</a> logic fails here, and cannot be repaired because of backward compatibility.</p>
<p>Lets look at this commandline:</p>
<blockquote><p>&#8220;..\bin\DumpCommandLine.exe&#8221; &#8220;C:\Program Files\test.xml&#8221; &#8220;C:\Program Files\meMySelfAndI.xml&#8221;</p></blockquote>
<p>The demo code below will output something like this:</p>
<p><pre class="brush: delphi;">
ParamCount:     2
ParamStr():
0       C:\develop\DumpCommandLine\bin\DumpCommandLine.exe
1       C:\Program Files\test.xml
CommandLine:
&quot;..\bin\DumpCommandLine.exe&quot; &quot;C:\Program Files\test.xml&quot; &quot;C:\Program Files\meMySelfAndI.xml&quot;
CommandLineStrings.Count:       3
CommandLineStrings[]:
0       ..\bin\DumpCommandLine.exe
1       C:\Program Files\test.xml
2       C:\Program Files\meMySelfAndI.xml
</pre></p>
<p>You see that regular ParamCount/ParamStr calls will mis the &#8220;C:\Program Files\test.xml&#8221; parameter.<br />
But getting it through CommandLineStrings will correctly get it.</p>
<p>This is the dump code:</p>
<p><pre class="brush: delphi;">
unit CommandlineDemoUnit;

interface

procedure DumpCommandLineToConsole;

implementation

uses
  Classes, CommandlineUnit;

procedure DumpCommandLineToConsole;
var
  CommandLineStrings: TStrings;
  I: Integer;
begin
  Writeln('ParamCount:', #9, ParamCount);
  Writeln('ParamStr():');
  for I := 0 to ParamCount - 1 do
    Writeln(I, #9, ParamStr(I));
  Writeln('CommandLine:');
  Writeln(CommandLine);
  CommandLineStrings := CreateCommandLineStrings();
  Writeln('CommandLineStrings.Count:', #9, CommandLineStrings.Count);
  Writeln('CommandLineStrings[]:');
  try
    for I := 0 to CommandLineStrings.Count - 1 do
      Writeln(I, #9, CommandLineStrings[I]);
  finally
    CommandLineStrings.Free;
  end;
end;

end.
</pre></p>
<p>And this the code to get the CommandLine and CommandLineStrings, which will fill a <a href="http://docwiki.embarcadero.com/VCL/en/Classes.TStrings" target="_blank">TStrings </a>result using the <a href="http://docwiki.embarcadero.com/VCL/XE/en/Classes.TStrings.CommaText" target="_blank">CommaText</a> property (it uses a default <a href="http://docwiki.embarcadero.com/VCL/XE/en/Classes.TStrings.QuoteChar" target="_blank">QuoteChar</a> of of <a href="http://en.wikipedia.org/wiki/Quotation_mark" target="_blank">double quote #34</a> and <a href="http://docwiki.embarcadero.com/VCL/XE/en/Classes.TStrings.Delimiter" target="_blank">Delimiter</a> of <a href="http://en.wikipedia.org/wiki/Space_(punctuation)" target="_blank">space #32</a>, this will work nicely):</p>
<p><pre class="brush: delphi;">
unit CommandlineUnit;

interface

uses
  Classes;

function CommandLine: string;
function CreateCommandLineStrings: TStrings;

implementation

uses
  Windows;

function CommandLine: string;
begin
  Result := GetCommandLine();
end;

function CreateCommandLineStrings: TStrings;
begin
  Result := TStringList.Create();
  Result.CommaText := CommandLine;
end;

end.
</pre></p>
<p>Note that you need to manually free the TStrings object to avoid memory leaks.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5933/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5933/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5933/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5933&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/14/delphi-commandline-oddity-with-double-quoted-arguments/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Code Quality: the rate of WTFs</title>
		<link>http://wiert.me/2011/07/06/code-quality-the-rate-of-wtfs/</link>
		<comments>http://wiert.me/2011/07/06/code-quality-the-rate-of-wtfs/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 05:00:00 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Opinions]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5896</guid>
		<description><![CDATA[OSnews has an interesting view on code quality: the number of WTFs/minute. I know it is from 2008, but it is so true, so I&#8217;m glad I re-found it. &#8211;jeroen via: wtfm.jpg (500×471). Filed under: .NET, Agile, Delphi, Development, Opinions, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5896&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>OSnews has an interesting view on code quality: the number of WTFs/minute.<a href="http://www.osnews.com/images/comics/wtfm.jpg"><img class="alignright" title="OSnews' view on code quality: the number of WTFs/minute" src="http://www.osnews.com/images/comics/wtfm.jpg" alt="" width="500" height="471" /></a></p>
<p>I know it is from 2008, but it is so true, so I&#8217;m glad I re-found it.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://www.osnews.com/story/19266/WTFs_m" target="_blank">wtfm.jpg (500×471)</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/agile/'>Agile</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/opinions/'>Opinions</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5896/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5896/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5896/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5896&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/06/code-quality-the-rate-of-wtfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://www.osnews.com/images/comics/wtfm.jpg" medium="image">
			<media:title type="html">OSnews&#039; view on code quality: the number of WTFs/minute</media:title>
		</media:content>
	</item>
		<item>
		<title>winapi &#8211; Best way to do non-flickering, segmented graphics updates in Delphi? &#8211; Stack Overflow</title>
		<link>http://wiert.me/2011/07/05/winapi-best-way-to-do-non-flickering-segmented-graphics-updates-in-delphi-stack-overflow/</link>
		<comments>http://wiert.me/2011/07/05/winapi-best-way-to-do-non-flickering-segmented-graphics-updates-in-delphi-stack-overflow/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 05:00:37 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[xCode/Mac/iPad/iPhone/iOS/cocoa]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5894</guid>
		<description><![CDATA[Recently, Jon Lennart Aasenden (of Surface Library fame) asked a nice winapi &#8211; Best way to do non-flickering, segmented graphics updates in Delphi question on StackOverflow. Though the question is marked Delphi, the boundaries and solution very generic, and apply to any graphics library or GUI you develop: Windows, Mac, iOS, et cetera: Avoid double buffering when using [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5894&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently, <a href="http://stackoverflow.com/users/544838/jon-lennart-aasenden" target="_blank">Jon Lennart Aasenden</a> (of <a href="http://delphimax.wordpress.com/2010/12/17/the-sl-graphics-library-preliminary-code/" target="_blank">Surface Library</a> fame) asked a nice <a href="http://stackoverflow.com/questions/6363954/best-way-to-do-non-flickering-segmented-graphics-updates-in-delphi">winapi &#8211; Best way to do non-flickering, segmented graphics updates in Delphi</a> question on StackOverflow.</p>
<p>Though the question is marked Delphi, the boundaries and solution very generic, and apply to any graphics library or GUI you develop: Windows, Mac, iOS, et cetera:</p>
<ul>
<li>Avoid double buffering when using GUI connections</li>
<li>Draw only what you need</li>
<li>Avoid redrawing whenever possible (for instance by letting the OS perform scrolling for you)</li>
</ul>
<div>&#8211;jeroen</div>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/xcodemacipadiphoneioscocoa/'>xCode/Mac/iPad/iPhone/iOS/cocoa</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5894/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5894/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5894/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5894&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/07/05/winapi-best-way-to-do-non-flickering-segmented-graphics-updates-in-delphi-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>The importance of static links on the web: many (really) old links still work</title>
		<link>http://wiert.me/2011/06/30/the-importance-of-static-links-on-the-web-many-really-links-still-work/</link>
		<comments>http://wiert.me/2011/06/30/the-importance-of-static-links-on-the-web-many-really-links-still-work/#comments</comments>
		<pubDate>Thu, 30 Jun 2011 05:00:37 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5875</guid>
		<description><![CDATA[Doing a re-haul of a Delphi project from almost 15 years ago, and some modifications a few year later, I came across a list of favourites I used back then. It also reminded me when beginning that project, there was no Google Search; you had Yahoo Search, HotBot and later on Northern Light, but AltaVista was the best. Finding your way [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5875&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Doing a re-haul of a Delphi project from almost 15 years ago, and some modifications a few year later, I came across a list of favourites I used back then.</p>
<p>It also reminded me when beginning that project, there was no <a href="http://en.wikipedia.org/wiki/Google_Search" target="_blank">Google Search</a>; you had <a href="http://en.wikipedia.org/wiki/Yahoo!_Search" target="_blank">Yahoo Search</a>, <a href="http://en.wikipedia.org/wiki/HotBot" target="_blank">HotBot</a> and later on <a href="http://en.wikipedia.org/wiki/Northern_Light_Group" target="_blank">Northern Light</a>, but <a href="http://en.wikipedia.org/wiki/AltaVista" target="_blank">AltaVista</a> was the best.<br />
Finding your way around was much harder, but luckily later on Google Search was there <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So here is a sample of how static the web is:</p>
<ul>
<li><a href="http://www.midnightbeach.com/jon/pubs/MsgWaits/MsgWaits.html" target="_blank">Better Threads For The VCL</a>: link still works</li>
<li><a href="http://www.codeguru.com/Cpp/W-P/dll/importexportissues/article.php/c3647/" target="_blank">CodeGuru Utilizing Delphi Codes in VC Without Using a DLL</a>:  link still works</li>
<li><a href="http://www.clevercomponents.com/articles/article019/delphi6sync.asp" target="_blank">Delphi 6, 7 threads synchronization in ActiveX controls</a>: link still works</li>
<li><a href="http://www.delphicorner.f9.co.uk/articles/op1.htm" target="_blank">Delphi Corner Article &#8211; Waiting for Threads</a>: link still works</li>
<li><a href="http://www.experts-exchange.com/Programming/Programming_Languages/Delphi/Q_20115185.html" target="_blank">Delphi Programming Launching and waiting for completion</a>: link still works (but now you require a user-id)</li>
<li><a href="http://www.experts-exchange.com/Programming/Programming_Languages/Delphi/Q_21468036.html" target="_blank">Delphi Programming Queued Threads, but with a responsive GUI</a>: link still works (but now you require a user-id)</li>
<li><a href="http://www.delphipraxis.net/topic7629_delphi+programmierer+gesucht.html&amp;highlight=hppemit" target="_blank">Delphi-PRAXiS Delphi Programmierer gesucht&#8230;</a>: removed</li>
<li><a href="http://www.delphipraxis.net/search.php?search_id=948654581&amp;start=0" target="_blank">Delphi-PRAXiS Suchen HPPEMIT</a>: you cannot save your searches in a link any more</li>
<li><a href="http://www.delphipraxis.net/26767-tipps-fuer-header-uebersetzungen.html" target="_blank">Delphi-PRAXiS Tipps für Header-Übersetzungen</a>: link still works, but the hppemit link highlight is gone</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.objectpascal/browse_thread/thread/a233dc5068bfa748/1667bf640254c029?lnk=st&amp;q=msgwaitformultipleobjects+delphi+processmessages&amp;rnum=5&amp;hl=en#1667bf640254c029" target="_blank">Google Groups borland.public.delphi.objectpascal &#8211; Avoiding Application.ProcessMessages &#8211; Hallvard Vassbotn</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.objectpascal/browse_thread/thread/6b64a8f51f73e935/46e760359034d42c?lnk=st&amp;q=msgwaitformultipleobjects+delphi&amp;rnum=1&amp;hl=en#46e760359034d42c" target="_blank">Google Groups borland.public.delphi.objectpascal &#8211; Bug inside TThread.WaitFor In Delphi 6</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.objectpascal/browse_thread/thread/79a44d5b61d0b9f7/989ed0cc3f551027?lnk=st&amp;q=msgwaitformultipleobjects+delphi&amp;rnum=3&amp;hl=en#989ed0cc3f551027" target="_blank">Google Groups borland.public.delphi.objectpascal</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.vcl.components.using/browse_thread/thread/48e3f0f0a922acc0/b6b8ebdf0fb5998d?lnk=st&amp;q=delphi+dll+unit+finalization&amp;rnum=2&amp;hl=en#b6b8ebdf0fb5998d" target="_blank">Google Groups borland.public.delphi.vcl.components.using &#8211; There is no dllProc call on exiting DLL</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.vcl.components.writing/browse_thread/thread/960dc65872ef5b12/893eaccabd7b1735?lnk=st&amp;q=hppemit+hpp&amp;rnum=1&amp;hl=en#893eaccabd7b1735" target="_blank">Google Groups borland.public.delphi.vcl.components.writing &#8211; DCC32 -JPNH switch generates HPP files including HPPEMIT</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.winapi/browse_thread/thread/41a9321a1ff2b772/fc3645800edd1805?lnk=st&amp;q=delphi+dll+unit+finalization&amp;rnum=3&amp;hl=en#fc3645800edd1805" target="_blank">Google Groups borland.public.delphi.winapi &#8211; Finalization order in DLL</a>: link still works</li>
<li><a href="http://groups.google.com/group/borland.public.delphi.winapi/browse_thread/thread/4a7857c98c176efd/2c92523f80ee44e0?lnk=st&amp;q=msgwaitformultipleobjects+delphi+processmessages&amp;rnum=2&amp;hl=en#2c92523f80ee44e0" target="_blank">Google Groups borland.public.delphi.winapi</a>: link still works</li>
<li><a href="http://www.thedelphimagazine.com/disks/dmag40.zip" target="_blank">Issue 40, Dec (395Kb)</a>: 404 error, no alternative as the Delphi Magazine stopped in 2007</li>
<li><a href="http://community.borland.com/soapbox/techvoyage/article/1,1795,10281,00.html" target="_blank">Pascal Header Translations</a>: link has <a href="http://edn.embarcadero.com/article/10281" target="_blank">moved</a> as Borland is now dead, and Embarcadero is alive</li>
<li><a href="http://velthuis.homepage.t-online.de/programs/convertpack.html" target="_blank">Rudy&#8217;s Delphi Corner &#8211; Conversion Helper Pack</a>: link has <a href="http://rvelthuis.de/programs/convertpack.html" target="_blank">moved</a> as Rudy has a new site</li>
<li><a href="http://www.thedelphimagazine.com/disks.php" target="_blank">The Delphi Magazine Article Source Code</a>:  404 error, no alternative as the Delphi Magazine stopped in 2007</li>
<li><a href="http://blogs.msdn.com/oldnewthing/archive/2005/02/17/375307.aspx" target="_blank">The Old New Thing MsgWaitForMultipleObjects and the queue state</a>: link still works</li>
<li><a href="http://www.swissdelphicenter.ch/torry/showcode.php?id=93" target="_blank">Torry&#8217;s Delphi Pages</a>: link still works</li>
</ul>
<p>I was pretty amazed that most of the links still work!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5875/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5875/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5875/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5875&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/30/the-importance-of-static-links-on-the-web-many-really-links-still-work/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Weaving: Source code, IL, ByteCode, Native</title>
		<link>http://wiert.me/2011/06/28/weaving-source-code-il-bytecode-native/</link>
		<comments>http://wiert.me/2011/06/28/weaving-source-code-il-bytecode-native/#comments</comments>
		<pubDate>Tue, 28 Jun 2011 05:00:21 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5868</guid>
		<description><![CDATA[Weaving extends your program adding new functionality. It can be at different levels for difference purposes (AOP, Debugging, Automated Testing, etc). This .net &#8211; What is IL Weaving? question on StackOverflow contains a few pointers to interesting reading material. &#8211;jeroen Filed under: .NET, Debugging, Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5868&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Weaving extends your program adding new functionality.</p>
<p>It can be at different levels for difference purposes (<a href="http://en.wikipedia.org/wiki/Aspect-oriented_programming" target="_blank">AOP</a>, <a href="http://en.wikipedia.org/wiki/Debugging" target="_blank">Debugging</a>, <a href="http://en.wikipedia.org/wiki/Automated_testing" target="_blank">Automated Testing</a>, etc).</p>
<p>This <a href="http://stackoverflow.com/questions/189359/what-is-il-weaving/189379#189379">.net &#8211; What is IL Weaving?</a> question on StackOverflow contains a few pointers to interesting reading material.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/debugging/'>Debugging</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5868/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5868/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5868/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5868&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/28/weaving-source-code-il-bytecode-native/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi and COBOL syntax highlighters</title>
		<link>http://wiert.me/2011/06/21/delphi-and-cobol-syntax-highlighters/</link>
		<comments>http://wiert.me/2011/06/21/delphi-and-cobol-syntax-highlighters/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 05:00:50 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[COBOL]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5858</guid>
		<description><![CDATA[I&#8217;ve been working on a project that uses both COBOL and Delphi. For documentation purposes, Syntax Highlighted code makes your code so much easier to read. Delphi has GExperts for source code export (in either HTML or RTF), but it took me a while to find a good syntax highlighter for COBOL. I finally found a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5858&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on a project that uses both COBOL and Delphi.</p>
<p>For documentation purposes, Syntax Highlighted code makes your code so much easier to read.</p>
<p><a href="http://www.embarcadero.com/products/delphi" target="_blank">Delphi</a> has <a href="http://www.gexperts.org/" target="_blank">GExperts</a> for source code export (in either <a href="http://en.wikipedia.org/wiki/HTML" target="_blank">HTML</a> or <a href="http://en.wikipedia.org/wiki/Rich_Text_Format" target="_blank">RTF</a>), but it took me a while to find a good <a href="http://en.wikipedia.org/wiki/Syntax_highlighting" target="_blank">syntax highlighter</a> for <a href="http://en.wikipedia.org/wiki/Cobol" target="_blank">COBOL</a>.</p>
<p>I finally found a <a href="http://www.tohtml.com/cobol/" target="_blank">COBOL syntax highighter</a> at <a href="http://www.tohtml.com/" target="_blank">tohtml.com</a>: it exports to HTML.</p>
<p>I&#8217;m glad I found that site, as they have a ton of syntax highlighters, divided into groups.</p>
<p>Quite amusing to see COBOL classified as &#8216;rare&#8217; (given that it has one of the largest code bases in the world).</p>
<p>This is what they support:</p>
<ul>
<li>main: Java</li>
<li>main: C</li>
<li>main: Visual Basic</li>
<li>main: PHP</li>
<li>main: C++</li>
<li>main: Perl</li>
<li>main: Python</li>
<li>main: C#</li>
<li>main: Ruby</li>
<li>main: JS.NET</li>
<li>main: VB.NET</li>
<li>main: Pascal</li>
<li>main: JavaScript</li>
<li>inet: html</li>
<li>inet: css</li>
<li>inet: css for html</li>
<li>inet: css for svg</li>
<li>inet: jsp</li>
<li>inet: xhtml transitional</li>
<li>inet: xhtml strict</li>
<li>inet: xhtml frameset</li>
<li>inet: asp &#8211; VBScript</li>
<li>inet: asp &#8211; JavaScript</li>
<li>inet: asp &#8211; PerlScript</li>
<li>inet: SVG 1.0</li>
<li>inet: ColdFusion</li>
<li>inet: ActionScript</li>
<li>inet: VBScript</li>
<li>xml: xml</li>
<li>xml: dtd</li>
<li>xml: xslt 1.0</li>
<li>xml: XML Schema</li>
<li>xml: Relax NG</li>
<li>xml: xlink</li>
<li>database: Clarion</li>
<li>database: Clipper</li>
<li>database: FoxPro</li>
<li>database: SQLJ (Java sql)</li>
<li>database: Paradox</li>
<li>database: SQL, PL/SQL</li>
<li>database: MySQL</li>
<li>scripts: Batch/Config.sys/NTcmd</li>
<li>scripts: sh/ksh/bash script</li>
<li>scripts: Apache httpd.conf</li>
<li>scripts: Config, INI and CTL</li>
<li>scripts: Colorer HRC</li>
<li>scripts: Colorer HRD</li>
<li>scripts: Delphi form</li>
<li>scripts: Java Compiler Compiler</li>
<li>scripts: Java properties</li>
<li>scripts: Lex</li>
<li>scripts: YACC</li>
<li>scripts: makefile</li>
<li>scripts: Regedit</li>
<li>scripts: Resources</li>
<li>scripts: TeX</li>
<li>scripts: OpenVMS DCL</li>
<li>scripts: VRML</li>
<li>scripts.install: RAR Install Script</li>
<li>scripts.install: Nullsoft Install Script</li>
<li>scripts.install: InnoSetup script</li>
<li>scripts.install: IS script</li>
<li>rare: ASM</li>
<li>rare: 1C</li>
<li>rare: Ada</li>
<li>rare: ABAP/4</li>
<li>rare: AutoIt 2.x</li>
<li>rare: AWK</li>
<li>rare: Dssp</li>
<li>rare: ADSP-21xx Asm</li>
<li>rare: Baan</li>
<li>rare: Cache/Open-M</li>
<li>rare: Cobol</li>
<li>rare: Eiffel</li>
<li>rare: Forth</li>
<li>rare: Fortran</li>
<li>rare: Haskell</li>
<li>rare: Icon</li>
<li>rare: IDL</li>
<li>rare: Lisp</li>
<li>rare: MatLab</li>
<li>rare: Modula2 and Oberon2</li>
<li>rare: PicAsm</li>
<li>rare: Rexx</li>
<li>rare: Standard ML</li>
<li>rare: OCaml</li>
<li>rare: Tcl/Tk</li>
<li>rare: Sicstus Prolog</li>
<li>rare: Turbo Prolog</li>
<li>rare: Verilog HDL</li>
<li>rare: VHDL</li>
<li>rare: z80asm</li>
<li>rare: asm80</li>
<li>rare: 8051 asm</li>
<li>rare: AVR asm</li>
<li>other: files.bbs</li>
<li>other: Diff/Patch</li>
<li>other: message</li>
<li>other: plain text</li>
<li>other: default type</li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/cobol/'>COBOL</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5858/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5858/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5858/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5858&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/21/delphi-and-cobol-syntax-highlighters/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>SVN tree to source code of Marco Cantu&#8217;s Delphi Books</title>
		<link>http://wiert.me/2011/06/09/svn-tree-to-source-code-of-marco-cantus-delphi-books/</link>
		<comments>http://wiert.me/2011/06/09/svn-tree-to-source-code-of-marco-cantus-delphi-books/#comments</comments>
		<pubDate>Thu, 09 Jun 2011 05:00:07 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5237</guid>
		<description><![CDATA[If you love the Delphi books by Marco Cantu as much as I do, then you certainly will love that Marco has created a public SVN repository at code.marcocantu.com containing all the samples of his Delphi 6, 7, 2007, 2009, 2010 and XE books. Way to go Marco! &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5237&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you love the Delphi books by Marco Cantu as much as I do, then you certainly will love that Marco has created a public SVN repository at <a href="http://code.marcocantu.com/p/marcodelphibooks/source/tree/HEAD/" target="_blank">code.marcocantu.com</a> containing all the samples of his Delphi 6, 7, 2007, 2009, 2010 and XE books.</p>
<p>Way to go Marco!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5237/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5237&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/09/svn-tree-to-source-code-of-marco-cantus-delphi-books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>GExperts version 1.35 was released on June 5th, 2011</title>
		<link>http://wiert.me/2011/06/08/gexperts-version-1-35-was-released-on-june-5th-2011/</link>
		<comments>http://wiert.me/2011/06/08/gexperts-version-1-35-was-released-on-june-5th-2011/#comments</comments>
		<pubDate>Wed, 08 Jun 2011 05:00:12 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5848</guid>
		<description><![CDATA[Earlier this week, the new GExperts 1.35 Release got published: a free set of expert extensions supporting Delphi 6 through XE. It is an incremental release has a few new features of which I like the new subgroup support in the Grep Search extensions most. Now hopefully, Thomas Müller will release an experimental GExperts build of version [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5848&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Earlier this week, the new <a href="http://gexperts.org/General/gexperts135.html">GExperts 1.35 Release</a> got published: a free set of expert extensions supporting Delphi 6 through XE.</p>
<p>It is an incremental release has a <a href="http://gexperts.org/Readme.txt" target="_blank">few new features</a> of which I like the new subgroup support in the Grep Search extensions most.</p>
<p>Now hopefully, Thomas Müller will release an <a href="http://www.dummzeuch.de/delphi/gexperts/english.html" target="_blank">experimental GExperts build</a> of version 1.35 soon: his experimental builds integrate a source code formatter that works across many Delphi versions and often formats better than the one included in Delphi 2010 and up.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5848/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5848/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5848&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/08/gexperts-version-1-35-was-released-on-june-5th-2011/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi sorcery &#8211; great new blog by Stefan Glienke: DataBinding, MEF, Lamda Expressions and more</title>
		<link>http://wiert.me/2011/06/07/delphi-sorcery-great-new-blog-by-stefan-glienke-databinding-mef-lamda-expressions-and-more/</link>
		<comments>http://wiert.me/2011/06/07/delphi-sorcery-great-new-blog-by-stefan-glienke-databinding-mef-lamda-expressions-and-more/#comments</comments>
		<pubDate>Tue, 07 Jun 2011 05:00:14 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5828</guid>
		<description><![CDATA[I just came across the great new Delphi sorcery blog by Stefan Glienke from Soest, NRW, Germany. He uses some cool new features recently introduced into Delphi for new ways of DataBinding, Yield-Return, Delphi Lambda Expressions, Delphi Dependency Injection with MEF and more. Sample code is at his Delphi Sorcery Google Project. I hoped that somebody would do all [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5828&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I just came across the great new <a href="http://delphisorcery.blogspot.com/">Delphi sorcery</a> blog by <a href="http://www.blogger.com/profile/09320735081289619570" target="_blank">Stefan Glienke</a> from Soest, NRW, Germany.</p>
<p>He uses some cool new features recently introduced into Delphi for <a href="http://delphisorcery.blogspot.com/2011/04/data-bindings-revisited.html" target="_blank">new</a> <a href="http://delphisorcery.blogspot.com/2011/05/new-features-for-data-bindings.html" target="_blank">ways</a> of <a href="http://delphisorcery.blogspot.com/2011/05/ide-support-for-data-bindings.html" target="_blank">DataBinding</a>, <a href="http://delphisorcery.blogspot.com/2011/04/yield-return-and-delphi.html" target="_blank">Yield-Return</a>, <a href="http://delphisorcery.blogspot.com/2011/05/lambdas-and-expression-trees-in-delphi.html" target="_blank">Delphi Lambda Expressions</a>, <a href="http://delphisorcery.blogspot.com/2011/05/going-beyond-dependency-injection-with.html" target="_blank">Delphi Dependency Injection with MEF</a> and more.</p>
<p>Sample code is at his <a href="https://code.google.com/p/delphisorcery/" target="_blank">Delphi Sorcery Google Project</a>.</p>
<p>I hoped that somebody would do all that, as this shows the real power of what Delphi can do.</p>
<p>Now it&#8217;s there for</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5828/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5828/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5828/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5828&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/06/07/delphi-sorcery-great-new-blog-by-stefan-glienke-databinding-mef-lamda-expressions-and-more/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi Win32 talking to .net &#8211; Different WSDL ASMX,WCF web-services &#8211; Stack Overflow</title>
		<link>http://wiert.me/2011/05/31/delphi-win32-talking-to-net-different-wsdl-asmxwcf-web-services-stack-overflow/</link>
		<comments>http://wiert.me/2011/05/31/delphi-win32-talking-to-net-different-wsdl-asmxwcf-web-services-stack-overflow/#comments</comments>
		<pubDate>Tue, 31 May 2011 05:00:01 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5822</guid>
		<description><![CDATA[An interesting question on Stackoverflow.com: .net &#8211; Different WSDL ASMX,WCF web-services &#8211; Stack Overflow. The answer is simple when you know it: flatten the WSDL that comes from WCF. Note that Delphi Win32 is not the only client having these issues, as Elton Stoneman shows on his blog and the WCFExtras toolkit for WCF that allows for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5822&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>An interesting question on Stackoverflow.com: <a href="http://stackoverflow.com/questions/6148422/different-wsdl-asmx-wcf-web-services">.net &#8211; Different WSDL ASMX,WCF web-services &#8211; Stack Overflow</a>.</p>
<p>The answer is simple when you know it: <a href="http://stackoverflow.com/questions/6148422/different-wsdl-asmx-wcf-web-services/6148620#6148620">flatten the WSDL</a> that comes from WCF.</p>
<p>Note that Delphi Win32 is not the only client having these issues, as <a href="http://geekswithblogs.net/EltonStoneman/Default.aspx" target="_blank">Elton Stoneman</a> <a href="http://geekswithblogs.net/EltonStoneman/archive/2008/07/30/flattening-wsdl-from-wcf-services.aspx" target="_blank">shows on his blog</a> and the <a href="http://wcfextras.codeplex.com/" target="_blank">WCFExtras toolkit for WCF</a> that allows for <span style="text-decoration:underline;">single WSDL export</span>.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5822/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5822/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5822/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5822&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/05/31/delphi-win32-talking-to-net-different-wsdl-asmxwcf-web-services-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>FM USB Library</title>
		<link>http://wiert.me/2011/05/10/fm-usb-library/</link>
		<comments>http://wiert.me/2011/05/10/fm-usb-library/#comments</comments>
		<pubDate>Tue, 10 May 2011 05:00:15 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5692</guid>
		<description><![CDATA[The FM USB Library is on my research list. &#8211;jeroen PS: a few raw links that might fit in: http://www.silabs.com/usbradio / http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx http://code.google.com/p/silabsradiodll/ http://parts.digikey.nl/1/1/543483-usb-fm-radio-stick-usbfmradio-rd.html http://www.mouser.com/ProductDetail/Silicon-Laboratories/USBFMRADIO-RD/?qs=42TdBvIR%2fY7X5XVJkFBvBg%3d%3d http://nl.farnell.com/jsp/search/productdetail.jsp?sku=1186925 http://www.newark.com/jsp/Non-Stocked/All+Non-Stocked+Products/SILICON+LABORATORIES/USBFMRADIO-RD/displayProduct.jsp?sku=98K2140 http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-40.html http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-41.html http://usb.brando.com/prod_detail.php?prod_id=00136 http://usb.brando.com/usb-radio-ii_p1785c35d15.html http://www.whitebream.com/p811.shtml?id=p811 http://khason.net/blog/read-and-use-fm-radio-or-any-other-usb-hid-device-from-c/ http://www.dealextreme.com/p/usb-digital-radio-receiver-dongle-fm-76-108mhz-1929 http://www.silabs.com/products/audiovideo/fmreceivers/Pages/default.aspx http://www.google.com/search?sourceid=chrome&#38;ie=UTF-8&#38;q=usb+fm+rds+site%3Amouser.com http://www.mp3car.com/hardware-development/69493-hqct-module-new-thread-following-hu-rds-rdbs.html http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-2.html http://www.cartft.com/catalog/il/1139 http://www.digital-car.co.uk/forum/showthread.php?12194-New-CarTFT-FM-(Automotive-USB-FM-RDS-tuner) http://www.cartft.com/catalog/il/1017 http://btwincap.sourceforge.net/download.html http://btwincap.sourceforge.net/supportedcards.html http://www.alibri.it/RRMobile/Silab%20USB%20Radio.htm http://www.mo-co-so.com/Car-TFT-FM-Tuner-with-RDS-p/mcs-tft-rad.htm http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272 Filed under: .NET, C#, Delphi, Development, Prism, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5692&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://fm.codeplex.com/">FM USB Library</a> is on my research list.</p>
<p>&#8211;jeroen</p>
<p>PS: a few raw links that might fit in:</p>
<p>http://www.silabs.com/usbradio / <a href="http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx">http://www.silabs.com/products/mcu/Pages/USBFMRadioRD.aspx</a></p>
<p><a href="http://code.google.com/p/silabsradiodll/">http://code.google.com/p/silabsradiodll/</a></p>
<p><a href="http://parts.digikey.nl/1/1/543483-usb-fm-radio-stick-usbfmradio-rd.html">http://parts.digikey.nl/1/1/543483-usb-fm-radio-stick-usbfmradio-rd.html</a></p>
<p><a href="http://www.mouser.com/ProductDetail/Silicon-Laboratories/USBFMRADIO-RD/?qs=42TdBvIR%2fY7X5XVJkFBvBg%3d%3d">http://www.mouser.com/ProductDetail/Silicon-Laboratories/USBFMRADIO-RD/?qs=42TdBvIR%2fY7X5XVJkFBvBg%3d%3d</a></p>
<p><a href="http://nl.farnell.com/jsp/search/productdetail.jsp?sku=1186925">http://nl.farnell.com/jsp/search/productdetail.jsp?sku=1186925</a></p>
<p><a href="http://www.newark.com/jsp/Non-Stocked/All+Non-Stocked+Products/SILICON+LABORATORIES/USBFMRADIO-RD/displayProduct.jsp?sku=98K2140">http://www.newark.com/jsp/Non-Stocked/All+Non-Stocked+Products/SILICON+LABORATORIES/USBFMRADIO-RD/displayProduct.jsp?sku=98K2140</a></p>
<p><a href="http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-40.html">http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-40.html</a></p>
<p><a href="http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-41.html">http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-41.html</a></p>
<p><a href="http://usb.brando.com/prod_detail.php?prod_id=00136">http://usb.brando.com/prod_detail.php?prod_id=00136</a></p>
<p><a href="http://usb.brando.com/usb-radio-ii_p1785c35d15.html">http://usb.brando.com/usb-radio-ii_p1785c35d15.html</a></p>
<p><a href="http://www.whitebream.com/p811.shtml?id=p811">http://www.whitebream.com/p811.shtml?id=p811</a></p>
<p><a href="http://khason.net/blog/read-and-use-fm-radio-or-any-other-usb-hid-device-from-c/">http://khason.net/blog/read-and-use-fm-radio-or-any-other-usb-hid-device-from-c/</a></p>
<p><a href="http://www.dealextreme.com/p/usb-digital-radio-receiver-dongle-fm-76-108mhz-1929">http://www.dealextreme.com/p/usb-digital-radio-receiver-dongle-fm-76-108mhz-1929</a></p>
<p><a href="http://www.silabs.com/products/audiovideo/fmreceivers/Pages/default.aspx">http://www.silabs.com/products/audiovideo/fmreceivers/Pages/default.aspx</a></p>
<p><a href="http://www.google.com/search?sourceid=chrome&amp;ie=UTF-8&amp;q=usb+fm+rds+site%3Amouser.com">http://www.google.com/search?sourceid=chrome&amp;ie=UTF-8&amp;q=usb+fm+rds+site%3Amouser.com</a></p>
<p><a href="http://www.mp3car.com/hardware-development/69493-hqct-module-new-thread-following-hu-rds-rdbs.html">http://www.mp3car.com/hardware-development/69493-hqct-module-new-thread-following-hu-rds-rdbs.html</a></p>
<p><a href="http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-2.html">http://www.mp3car.com/hardware-development/64550-usb-fm-rds-solution-with-sofware-2.html</a></p>
<p><a href="http://www.cartft.com/catalog/il/1139">http://www.cartft.com/catalog/il/1139</a></p>
<p><a href="http://www.digital-car.co.uk/forum/showthread.php?12194-New-CarTFT-FM-(Automotive-USB-FM-RDS-tuner)">http://www.digital-car.co.uk/forum/showthread.php?12194-New-CarTFT-FM-(Automotive-USB-FM-RDS-tuner)</a></p>
<p><a href="http://www.cartft.com/catalog/il/1017">http://www.cartft.com/catalog/il/1017</a></p>
<p><a href="http://btwincap.sourceforge.net/download.html">http://btwincap.sourceforge.net/download.html</a></p>
<p><a href="http://btwincap.sourceforge.net/supportedcards.html">http://btwincap.sourceforge.net/supportedcards.html</a></p>
<p><a href="http://www.alibri.it/RRMobile/Silab%20USB%20Radio.htm">http://www.alibri.it/RRMobile/Silab%20USB%20Radio.htm</a></p>
<p><a href="http://www.mo-co-so.com/Car-TFT-FM-Tuner-with-RDS-p/mcs-tft-rad.htm">http://www.mo-co-so.com/Car-TFT-FM-Tuner-with-RDS-p/mcs-tft-rad.htm</a></p>
<p><a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272">http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272</a></p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/net/prism/'>Prism</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5692/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5692&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/05/10/fm-usb-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Tortoise SVN Global Ignore Pattern for Delphi and Visual Studio</title>
		<link>http://wiert.me/2011/04/26/tortoise-svn-global-ignore-pattern-for-delphi-and-visual-studio/</link>
		<comments>http://wiert.me/2011/04/26/tortoise-svn-global-ignore-pattern-for-delphi-and-visual-studio/#comments</comments>
		<pubDate>Tue, 26 Apr 2011 05:00:10 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Source Code Management]]></category>
		<category><![CDATA[Subversion/SVN]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5597</guid>
		<description><![CDATA[Since I use (among others) both Visual Studio and Delphi, I changed the Tortoise Global Ignore Pattern to be this: Debug lib *.identcache *.local *bin *obj RECYCLER Bin *.user *.suo *.dcu __history ModelSupport_* *.rsm thumbs.db *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store The bold portion is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5597&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Since I use (among others) both Visual Studio and Delphi, I changed the Tortoise Global Ignore Pattern to be this:</p>
<blockquote><p><strong>Debug lib *.identcache *.local *bin *obj RECYCLER Bin *.user *.suo *.dcu __history ModelSupport_* *.rsm thumbs.db</strong> *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store</p></blockquote>
<p>The bold portion is what I changed when compared to the original one:</p>
<blockquote><p>*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store</p></blockquote>
<p>Input from <a href="http://vamsee-konda.blogspot.com/2010/05/tortoise-svn-global-ignore-pattern-for.html" target="_blank">Tortoise SVN Global Ignore Pattern for Visual Studio</a> (which also included some of the Delphi patterns), and <a href="http://stackoverflow.com/questions/182492/how-do-i-configure-the-tortoisesvn-global-ignore-pattern-properly" target="_blank">this Stackoverflow question</a> (that indicated the patterns are case sensitive).</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/source-code-management/'>Source Code Management</a>, <a href='http://wiert.me/category/development/source-code-management/subversionsvn/'>Subversion/SVN</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5597/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5597/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5597/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5597&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/04/26/tortoise-svn-global-ignore-pattern-for-delphi-and-visual-studio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi Constraints in Generics &#8211; RAD Studio XE documentation wiki</title>
		<link>http://wiert.me/2011/04/21/delphi-constraints-in-generics-rad-studio-xe-documentation-wiki/</link>
		<comments>http://wiert.me/2011/04/21/delphi-constraints-in-generics-rad-studio-xe-documentation-wiki/#comments</comments>
		<pubDate>Thu, 21 Apr 2011 05:00:36 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5549</guid>
		<description><![CDATA[Quite a few things are similar when doing Generics in both Delphi and C#. But constraints are a bit different. To quote the Delphi Wiki page on Constraints in Generics &#8211; RAD Studio XE: Constraints can be associated with a type parameter of a generic. Constraints declare items that must be supported by any particular [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5549&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Quite a few things are similar when doing Generics in both Delphi and C#.</p>
<p>But constraints are a bit different.</p>
<p>To quote the Delphi Wiki page on <a href="http://docwiki.embarcadero.com/RADStudio/XE/en/Constraints_in_Generics">Constraints in Generics &#8211; RAD Studio XE</a>:</p>
<blockquote><p>Constraints can be associated with a type parameter of a generic. Constraints declare items that must be supported by any particular type passed to that parameter in a construction of the generic type</p>
<p>Constraint items include:</p>
<ul>
<li>Zero, one, or multiple <span style="text-decoration:underline;">interface types</span></li>
<li>Zero or one <span style="text-decoration:underline;">class type</span></li>
<li>The reserved word &#8220;<span style="text-decoration:underline;">constructor</span>&#8220;, &#8220;<span style="text-decoration:underline;">class</span>&#8220;, or &#8220;<span style="text-decoration:underline;">record</span>&#8220;</li>
</ul>
<p>You can specify both &#8220;<span style="text-decoration:underline;">constructor</span>&#8221; and &#8220;<span style="text-decoration:underline;">class</span>&#8221; for a constraint. However, &#8220;<span style="text-decoration:underline;">record</span>&#8221; cannot be combined with other reserved words.<br />
Multiple constraints act as an additive union (&#8220;AND&#8221; logic).</p></blockquote>
<p>A few other differences are these:</p>
<ul>
<li>In .NET, there is a unified typing system: everything descends from System.Object, including both value types and reference types. In Delphi this is not the case. In .NET, when you don&#8217;t specify a constraint, but use the type in a reference way, it will do automatic boxing. Delphi has no concept of automatic boxing, so you cannot use a non-constrained type as a reference</li>
<li>In both .NET and Delphi, you cannot specify a constraint on an enumeration type. In .NET you can work around this by constraining on the underlying interfaces. In Delphi you cannot do that because enumeration types are ordinal types that do not implement interfaces.</li>
<li>In Delphi you cannot constrain on ordinal types.</li>
</ul>
<p>Note that &#8211; like the Delphi documentation &#8211; the <a href="http://msdn.microsoft.com/en-us/library/d5x73970.aspx" target="_blank">C# constraints on type parameters</a> documentation is not complete on those either.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://docwiki.embarcadero.com/RADStudio/XE/en/Constraints_in_Generics">Constraints in Generics &#8211; RAD Studio XE</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5549/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5549/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5549/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5549&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/04/21/delphi-constraints-in-generics-rad-studio-xe-documentation-wiki/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Entity Framework 4 &#8211; security warning popup workaround: Do you trust all the T4 &#8220;text templates&#8221; on your system, even future ones?</title>
		<link>http://wiert.me/2011/04/13/entity-framework-4-security-warning-popup-workaround-do-you-trust-all-the-t4-text-templates-on-your-system-even-future-ones/</link>
		<comments>http://wiert.me/2011/04/13/entity-framework-4-security-warning-popup-workaround-do-you-trust-all-the-t4-text-templates-on-your-system-even-future-ones/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 05:00:31 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[EF Entity Framework]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5519</guid>
		<description><![CDATA[When using Entity Framework 4, your transofmrations (model to classes, DB to model, etc) are performed by T4 Text Templates. Those templates are executed all over the place (when saving your project, building your project, changing your model, etc). Since anyone can insert a T4 Text Template into Visual Studio, and those are scripts, it [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5519&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When using Entity Framework 4, your transofmrations (model to classes, DB to model, etc) are performed by <a href="http://msdn.microsoft.com/en-us/library/bb126445.aspx" target="_blank">T4 Text Templates</a>.</p>
<p>Those templates are executed all over the place (when saving your project, building your project, changing your model, etc).</p>
<p>Since anyone can insert a T4 Text Template into Visual Studio, and those are scripts, it is a potential vulnerability.</p>
<p>The default Visual Studio behaviour is to show you a dialog like this:<br />
<a href="http://farm6.static.flickr.com/5097/5538948119_5bb9a2826a_o.png"><img class="alignright" title="Do  you really trust all T4 Text Templates ever added to Visual Studio?" src="http://farm6.static.flickr.com/5097/5538948119_5bb9a2826a_o.png" alt="" width="538" height="189" /></a></p>
<p><pre class="brush: plain;">
[Security Warning]

Running this text template can potentially harm your computer. Do not run it if you
obtain if rtom an untrusted source.

Click OK. to run the template.
Click Cancel top stop the process.

[X] Do not show this message again

[OK]  [Cancel]
</pre></p>
<p><a href="http://www.google.com/search?q=%22visual+studio+2010%22+%22Do+not+show+this+message+again%22" target="_blank">Some blogs mention</a> Just click OK and feel free to check &#8220;do not show this message again.&#8221;</p>
<p>I&#8217;m not sure I want that: it would indicate I always trust T4 Text Templates, even the ones added in the future (T4 Text Templates are executable content, malicious software could find it&#8217;s way into your development environment; anyone remember <a href="http://nakedsecurity.sophos.com/2009/08/18/compileavirus/" target="_blank">the virus that hooked itself into the run-time library sources of a development system</a> so it would spread through anything compiled on that system?).</p>
<p>But I also don&#8217;t want to click OK on that dialog.</p>
<p>It would be so nice if the dialog:</p>
<ol>
<li>Showed which template is about to be executed</li>
<li>Allowed me to skip <span style="text-decoration:underline;">only for that particular template</span></li>
</ol>
<p>Anyone better thoughts on this?</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://thedatafarm.com/blog/data-access/customizing-edm-code-gen-in-ef4/">Customizing EDM Code Gen in EF4 : Don&#8217;t Be Iffy</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/net/ef-entity-framework/'>EF Entity Framework</a>, <a href='http://wiert.me/category/development/software-development/net/prism/'>Prism</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5519/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5519/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5519/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5519&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/04/13/entity-framework-4-security-warning-popup-workaround-do-you-trust-all-the-t4-text-templates-on-your-system-even-future-ones/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>

		<media:content url="http://farm6.static.flickr.com/5097/5538948119_5bb9a2826a_o.png" medium="image">
			<media:title type="html">Do  you really trust all T4 Text Templates ever added to Visual Studio?</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi XE introduced SafeIntfAsClass  to cast back interface to class (via: oop &#8211; Delphi &#8211; Proxy Design Pattern &#8211; interface problem &#8211; Stack Overflow)</title>
		<link>http://wiert.me/2011/03/23/delphi-xe-introduced-safeintfasclass-to-cast-back-interface-to-class-via-oop-delphi-proxy-design-pattern-interface-problem-stack-overflow/</link>
		<comments>http://wiert.me/2011/03/23/delphi-xe-introduced-safeintfasclass-to-cast-back-interface-to-class-via-oop-delphi-proxy-design-pattern-interface-problem-stack-overflow/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 05:00:08 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5340</guid>
		<description><![CDATA[Delphi XE introduced the SafeIntAsClass to cast back from an interface to a class. This is one of the things I really started to miss after doing a lot of .NET work (where that worked starting with .NET 1). Older versions of Delphi did not support safely casting from an interface back to an object. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5340&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Delphi XE introduced the SafeIntAsClass to cast back from an interface to a class.</p>
<p>This is one of the things I really started to miss after doing a lot of .NET work (where that worked starting with .NET 1).</p>
<blockquote><p>Older versions of Delphi did not support safely casting from an interface back to an object.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via: <a href="http://stackoverflow.com/questions/5035103/delphi-proxy-design-pattern-interface-problem/5037284#5037284">oop &#8211; Delphi &#8211; Proxy Design Pattern &#8211; interface problem &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5340/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5340/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5340/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5340&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/23/delphi-xe-introduced-safeintfasclass-to-cast-back-interface-to-class-via-oop-delphi-proxy-design-pattern-interface-problem-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi Labs: DataSnap XE and jQueryMobile; a Web Frontend accessing DataSnap through a Delphi WebBroker server</title>
		<link>http://wiert.me/2011/03/22/delphi-labs-datasnap-xe-and-jquerymobile-a-web-frontend-accessing-datasnap-through-a-delphi-webbroker-server/</link>
		<comments>http://wiert.me/2011/03/22/delphi-labs-datasnap-xe-and-jquerymobile-a-web-frontend-accessing-datasnap-through-a-delphi-webbroker-server/#comments</comments>
		<pubDate>Tue, 22 Mar 2011 11:00:43 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5516</guid>
		<description><![CDATA[Paweł Głowacki recently released two very interesting blog articles, together with 5 (five!) demonstration videos on how to get your mobile device to talk to a DataSnap backend using jQueryMobile so you get a very native look &#38; feel UI on your mobile device without putting a lot of effort in writing a native device [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5516&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://gp.embarcadero.com/authors/edit/3956.aspx" target="_blank">Paweł Głowacki</a> recently released <span style="text-decoration:underline;">two very interesting blog</span> articles, together with 5 (five!) demonstration videos on how to get your mobile device to talk to a DataSnap backend using <a href="http://jquerymobile.com/" target="_blank">jQueryMobile</a> so you get a very native look &amp; feel UI on your mobile device without putting a lot of effort in writing a native device app.</p>
<p><a href="http://www.delphifeeds.com/go/s/77850" target="_blank">Part 1: Delphi Labs: DataSnap XE &#8211; WebBroker jQueryMobile Boilerplate &#8211; DelphiFeeds.com</a>.<br />
<a href="http://www.delphifeeds.com/go/s/77884" target="_blank">Part 2: Delphi Labs: DataSnap XE &#8211; jQueryMobile Web Frontend &#8211; DelphiFeeds.com</a>.</p>
<p>Highly recommended!</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5516/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5516&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/22/delphi-labs-datasnap-xe-and-jquerymobile-a-web-frontend-accessing-datasnap-through-a-delphi-webbroker-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Ideone.com &#124; Online IDE &amp; Debugging Tool &gt;&gt; C/C++, Java, PHP, Python, Perl and 40+ compilers and intepreters</title>
		<link>http://wiert.me/2011/03/18/ideone-com-online-ide-debugging-tool-cc-java-php-python-perl-and-40-compilers-and-intepreters/</link>
		<comments>http://wiert.me/2011/03/18/ideone-com-online-ide-debugging-tool-cc-java-php-python-perl-and-40-compilers-and-intepreters/#comments</comments>
		<pubDate>Fri, 18 Mar 2011 11:00:45 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5450</guid>
		<description><![CDATA[Really cool stuff; dozens of computer languages are supported, including C# and VB.NET (both on Mono) and a few Pascal flavours. Briefly about ideone ideone.com is a&#8230; pastebin. But a pastebin like no other on the Internet. More accurate expression would be online mini IDE and debugging tool. Ideone is an Italian word for great [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5450&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Really cool stuff; dozens of computer languages are supported, including C# and VB.NET (both on Mono) and a few Pascal flavours.</p>
<blockquote><p><strong>Briefly about ideone</strong></p>
<p><a href="http://ideone.com/" target="_blank">ideone.com</a> is a&#8230; pastebin. But a pastebin like no other on the Internet. More accurate expression would be online mini IDE and debugging tool.</p>
<p>Ideone is an Italian word for great ideas &#8211; because ideone.com is a place where your greatest ideas can spring to life.</p>
<p>ideone.com is designed mostly for programmers (but, of course, common plain text can also be uploaded). You can use it to:</p>
<p>share your code (that&#8217;s obvious &#8211; it is a pastebin, isn&#8217;t it? <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) in a neat way,</p>
<p>run your code on server side in more than 40 programming languages (number still growing)</p>
<p>and do it all with your own input data!</p>
<p>ideone.com also provides free Ideone API which is availabe as a webservice. It&#8217;s functionality allows you to build your own ideone-like service!</p>
<p>for logged in users Ideone offers possibility to manage their codes, publish multiple submissions at one go, and more.</p>
<p>All codes can be accessed through convenient hash links. Source code pages provide information about the code and its execution: memory usage, execution time, language and compiler version, code itself, input uploaded by the user, output generated by the program and error messages from compilers and interpreters.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via <a href="http://ideone.com/about">Ideone.com | Online IDE &amp; Debugging Tool &gt;&gt; C/C++, Java, PHP, Python, Perl and 40+ compilers and intepreters</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/net/vb-net/'>VB.NET</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5450/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5450&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/18/ideone-com-online-ide-debugging-tool-cc-java-php-python-perl-and-40-compilers-and-intepreters/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>“Try to avoid foreach/for loops”–Over my Dead Body! &#124; Visual Studio Feeds</title>
		<link>http://wiert.me/2011/03/16/%e2%80%9ctry-to-avoid-foreachfor-loops%e2%80%9d%e2%80%93over-my-dead-body-visual-studio-feeds/</link>
		<comments>http://wiert.me/2011/03/16/%e2%80%9ctry-to-avoid-foreachfor-loops%e2%80%9d%e2%80%93over-my-dead-body-visual-studio-feeds/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 05:00:33 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5033</guid>
		<description><![CDATA[Zack Owens wrote a nice article comparing various loop constructs. Summary: If the semantics are the same, it does not matter if you use foreach, for, while or do while: they all  have equal speed. So: choose the loop construct that best fits the problem you are trying to solve. &#8211;jeroen via: “Try to avoid foreach/for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5033&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://visualstudiofeeds.com/index.php?option=com_content&amp;view=category&amp;id=168:zackowens&amp;Itemid=54" target="_blank">Zack Owens</a> wrote a <a href="http://visualstudiofeeds.com/index.php?option=com_content&amp;view=article&amp;id=1865:%E2%80%9CTry+to+avoid+foreach/for+loops%E2%80%9D%E2%80%93Over+my+Dead+Body!&amp;catid=168:zackowens&amp;Itemid=54&amp;sms_ss=pingfm&amp;at_xt=4d3df99e43ea9b1e,0" target="_blank">nice article comparing various loop constructs</a>.</p>
<p>Summary:<br />
If the semantics are the same, it does not matter if you use foreach, for, while or do while: they all  have equal speed.</p>
<p>So: choose the loop construct that best fits the problem you are trying to solve.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://visualstudiofeeds.com/index.php?option=com_content&amp;view=article&amp;id=1865%3A%E2%80%9CTry+to+avoid+foreach%2Ffor+loops%E2%80%9D%E2%80%93Over+my+Dead+Body%21&amp;catid=168%3Azackowens&amp;Itemid=54&amp;sms_ss=pingfm&amp;at_xt=4d3df99e43ea9b1e%2C0">“Try to avoid foreach/for loops”–Over my Dead Body! | Visual Studio Feeds</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/net/prism/'>Prism</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5033/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5033/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5033/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5033&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/16/%e2%80%9ctry-to-avoid-foreachfor-loops%e2%80%9d%e2%80%93over-my-dead-body-visual-studio-feeds/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>online: Create a GUID</title>
		<link>http://wiert.me/2011/03/10/online-create-a-guid/</link>
		<comments>http://wiert.me/2011/03/10/online-create-a-guid/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 10:55:54 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5457</guid>
		<description><![CDATA[Don&#8217;t you love this kind of sites: Create a GUID at createguid.com &#8211;jeroen via Create a GUID. Filed under: .NET, Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5457&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Don&#8217;t you love this kind of sites:</p>
<blockquote><p>Create a GUID at <a href="http://createguid.com" target="_blank">createguid.com</a></p></blockquote>
<p>&#8211;jeroen</p>
<p>via <a href="http://createguid.com/">Create a GUID</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5457/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5457&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/10/online-create-a-guid/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Why is the result of RoundTo(87.285, -2) =&gt; 87.28 &#8211; Stack Overflow</title>
		<link>http://wiert.me/2011/03/08/why-is-the-result-of-roundto87-285-2-87-28-stack-overflow/</link>
		<comments>http://wiert.me/2011/03/08/why-is-the-result-of-roundto87-285-2-87-28-stack-overflow/#comments</comments>
		<pubDate>Tue, 08 Mar 2011 10:00:11 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5423</guid>
		<description><![CDATA[Programmers on all sorts of platforms get this wrong all the time (I admit having done this in bad ways myself too). In short: Don&#8217;t expect floating point values in a computer to be represented as decimals. Rob Kennedy wrote a very nice answer on this: The exact value 87.285 is not representable as a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5423&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Programmers on all sorts of platforms get this wrong all the time (I admit having done this in bad ways myself too).</p>
<p>In short: <span style="text-decoration:underline;">Don&#8217;t expect floating point values in a computer to be represented as decimals.</span></p>
<p>Rob Kennedy wrote a very nice answer on this:</p>
<blockquote><p>The exact value 87.285 is not representable as a floating-point value in Delphi. A <a href="http://pages.cs.wisc.edu/~rkennedy/exact-float?number=87.285" target="_blank">page on my Web site</a> shows what that value really is, as Extended, Double, and Single:</p>
<p><code>87.285 = + 87.28500 00000 00000 00333 06690 73875 46962 12708 95004 27246 09375</code></p>
<p><code>87.285 = + 87.28499 99999 99996 58939 48683 51519 10781 86035 15625</p>
<p></code><code>87.285 = + 87.28500 36621 09375</code></p></blockquote>
<p>And David Heffernan points to the best link you can get on this topic:</p>
<blockquote><p>The classic reference on floating point is <a href="http://www.eason.com/library/math/floatingmath.pdf" target="_blank">What Every Computer Scientist Should Know About Floating-Point Arithmetic</a>.</p>
<p>For currency based calculations, if indeed this is, you should use a base 10 number type rather than base 2 floating point. In Delphi that means `Currency`.</p></blockquote>
<p>&#8211;jeroen</p>
<p>via <a href="http://stackoverflow.com/questions/5191235/why-is-the-result-of-roundto87-285-2-87-28">delphi &#8211; Why is the result of RoundTo(87.285, -2) =&gt; 87.28 &#8211; Stack Overflow</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5423/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5423&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/08/why-is-the-result-of-roundto87-285-2-87-28-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Ask yourself: &#8220;are you writing a framework now?&#8221; &#8211; How (not) to write Factorial</title>
		<link>http://wiert.me/2011/03/01/ask-yourself-are-you-writing-a-framework-how-not-to-write-factorial/</link>
		<comments>http://wiert.me/2011/03/01/ask-yourself-are-you-writing-a-framework-how-not-to-write-factorial/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 04:00:08 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5102</guid>
		<description><![CDATA[On the Development Choas Theory blog, I bumped into a brilliant blog post titled How (not) to write Factorial in Java. It is not about Java, or any other programming language, platform or library for that matter. It equally applies to your favourite programming language and framework (be it shell scripts, assembler, .NET, Delphi, haskell, PHP, ruby, Eiffel, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5102&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>On the <a href="http://chaosinmotion.com/blog/" target="_blank">Development Choas Theory</a> blog, I bumped into a brilliant blog post titled <a href="http://chaosinmotion.com/blog/?p=622">How (not) to write Factorial in Java</a>.</p>
<p>It is not about Java, or any other programming language, platform or library for that matter.</p>
<p>It equally applies to your favourite programming language and framework (be it shell scripts, assembler, .NET, Delphi, haskell, PHP, ruby, Eiffel, Java or any other).</p>
<p>It is about the question that <a href="http://www.nealford.com/" target="_blank">Neal Ford</a> taught me quite a while ago that you should ask yourself several times a day:<br />
<span style="text-decoration:underline;"><em>&#8220;Am I writing a framework now?&#8221;</em></span></p>
<p>Developing software is about only developing the things you really need to.</p>
<p>Framework development is in a totally different league than developing &#8216;just&#8217; software.<br />
It requires even more thought, attention, testing, etc.<br />
And after that, you need to support it on a different level too.</p>
<p>Frameworks are far more costly than you would guess at first sight&#8230;</p>
<p>So only develop a framework  for something (*) if you observe that it is actually used in a lot of places and requires a framework.</p>
<p>(*) insert what you are currently working on here.</p>
<p>&#8211;jeroen</p>
<p>Via:  <a href="http://chaosinmotion.com/blog/?p=622">Development Chaos Theory » Blog Archive » How (not) to write Factorial in Java</a></p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5102/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5102&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/03/01/ask-yourself-are-you-writing-a-framework-how-not-to-write-factorial/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Delphi friend in NZ seeks work (preferably remotely)</title>
		<link>http://wiert.me/2011/02/25/delphi-friend-in-nz-seeks-work-preferably-remotely/</link>
		<comments>http://wiert.me/2011/02/25/delphi-friend-in-nz-seeks-work-preferably-remotely/#comments</comments>
		<pubDate>Fri, 25 Feb 2011 10:00:21 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5391</guid>
		<description><![CDATA[A seasoned Delphi developer friend in NZ (near Christchurch) seeks work, preferably if he can work remotely. Please drop me an email to get more information. &#8211;jeroen Filed under: Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5391&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A seasoned Delphi developer friend in NZ (near Christchurch) seeks work, preferably if he can work remotely.</p>
<p>Please drop me an email to get more information.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5391/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5391&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/25/delphi-friend-in-nz-seeks-work-preferably-remotely/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Supporting Office 2003 from .NET: getting the Office 2003 Primary Interop Assemblies</title>
		<link>http://wiert.me/2011/02/22/supporting-office-2003-from-net-getting-the-office-2003-primary-interop-assemblies/</link>
		<comments>http://wiert.me/2011/02/22/supporting-office-2003-from-net-getting-the-office-2003-primary-interop-assemblies/#comments</comments>
		<pubDate>Tue, 22 Feb 2011 04:00:26 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Visual Studio 2005]]></category>
		<category><![CDATA[Visual Studio 2008]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Visual Studio and tools]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5076</guid>
		<description><![CDATA[Often you work with projects not having the latest stuff. Sometimes that is a good thing: latest stuff is not always best In this case, the client had Office 2003, and needed to do some Excel automation from .NET. The development systems however had Office 2007 on it, so importing Excel defaults to the Office [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5076&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Often you work with projects not having the latest stuff.<br />
Sometimes that is a good thing: latest stuff is not always best <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>In this case, the client had Office 2003, and needed to do some Excel automation from .NET.<br />
The development systems however had Office 2007 on it, so importing Excel defaults to the Office 2007 Primary Interop Assembly: Office version 12 in stead of 11.<span id="more-5076"></span>Installing Office 2003 was not an option, so the Office 2003 Primary Interop Assemblies were needed.</p>
<p>MSDN explains nicely how to install the <a href="http://msdn.microsoft.com/en-us/library/aa159923(v=office.11).aspx" target="_blank">Office 2003 Primary Interop Assemblies</a>, and directs to the updated download page of the <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=3c9a983a-ac14-4125-8ba0-d36d67e0f4ad" target="_blank">Office 2003 Update: Redistributable Primary Interop Assemblies</a>.<br />
There is also a <a href="http://download.microsoft.com/download/8/3/a/83a40b5a-5050-4940-bcc4-7943e1e59590/O2003PIA.EXE" target="_blank">direct download</a>.</p>
<h3>Sidenote:</h3>
<p>The version numbering of products by various vendors confuses a lot of people, Microsoft Office is no different.</p>
<p>Luckily, there Wikipedia has a <a href="http://en.wikipedia.org/wiki/History_of_Microsoft_Office" target="_blank">History of Office page</a> listing the various internal and external version numbers of Microsoft Office for Windows (Their <a href="http://en.wikipedia.org/wiki/Microsoft_Office" target="_blank">Microsoft Office page</a>also has a section on <a href="http://en.wikipedia.org/wiki/Microsoft_Office#Version_history" target="_blank">office version numbers for both Windows and Mac</a>).</p>
<p>Recent Windows Office versions summary:</p>
<ul>
<li>Office 2003 is version 11</li>
<li>Office 2007 is version 12</li>
<li>Office 2010 is version 14<br />
(that is why people from the USA have a problem reaching the 14th <a href="http://en.wikipedia.org/wiki/Storey" target="_blank">floor</a> in Europe: we do have both a <a href="http://en.wikipedia.org/wiki/Thirteenth_floor" target="_blank">13th floor</a>, and ground level is called floor zero)</li>
</ul>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/net/prism/'>Prism</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2005/'>Visual Studio 2005</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2008/'>Visual Studio 2008</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/visual-studio-2010/'>Visual Studio 2010</a>, <a href='http://wiert.me/category/development/software-development/net/visual-studio-and-tools/'>Visual Studio and tools</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5076/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5076/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5076/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5076&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/22/supporting-office-2003-from-net-getting-the-office-2003-primary-interop-assemblies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Verifying if two hosts are on the same IPv4 network</title>
		<link>http://wiert.me/2011/02/17/verifying-if-two-hosts-are-on-the-same-ipv4-network/</link>
		<comments>http://wiert.me/2011/02/17/verifying-if-two-hosts-are-on-the-same-ipv4-network/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 04:00:25 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5066</guid>
		<description><![CDATA[Recently, I wrote a bunch of code both in C# and Delphi to verify if two hosts are on the same IPv4 network. Even though the public IPv4 address space is exhausted (IANA recently allocated the final two IPv4 blocks of their primary pool to APNIC, then allocated the five remaning /8 IPv4 blocks to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5066&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently, I wrote a bunch of code both in C# and Delphi to verify if two hosts are on the same <a href="http://en.wikipedia.org/wiki/IPv4" target="_blank">IPv4</a> network.</p>
<p>Even though the <a href="http://en.wikipedia.org/wiki/IPv4_address_exhaustion" target="_blank">public IPv4 address space is exhausted</a> (<a href="http://www.apnic.net/publications/news/2011/delegation" target="_blank">IANA recently allocated the final two IPv4 blocks of their primary pool to APNIC</a>, then <a href="http://mailman.nanog.org/pipermail/nanog/2011-February/032107.html" target="_blank">allocated the five remaning /8 IPv4 blocks to the RIRs</a>, thereby <a href="http://www.nro.net/news/ipv4-free-pool-depleted" target="_blank">depleting the IPv4 pool</a>), they are still used a lot, especially in private networks.</p>
<p>Over the next couple of weeks, you will see a couple of blog posts explaining:</p>
<ul>
<li>how to get the IPv4 addresses and network masks of network interfaces in your computer</li>
<li>how to convert those to and from strings</li>
<li>how to convert a host-name to a list of IP addresses</li>
<li>how to lookup the current host-name</li>
<li>how network masks are related to counting leading/trailing ones and zeros</li>
<li>how to compare two IPv4 addresses given they have the same network masks</li>
</ul>
<p>Those blog posts will have sample code in both Delphi and C#. And there will be unit tests to verify the underlying code.</p>
<p>&#8211;jeroen</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5066/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5066/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5066/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5066&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/17/verifying-if-two-hosts-are-on-the-same-ipv4-network/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>The #reflector licensing debacle: ILSpy</title>
		<link>http://wiert.me/2011/02/11/the-reflector-licensing-debacle-ilspy/</link>
		<comments>http://wiert.me/2011/02/11/the-reflector-licensing-debacle-ilspy/#comments</comments>
		<pubDate>Fri, 11 Feb 2011 10:00:54 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5282</guid>
		<description><![CDATA[I updated my first .NET Reflector post with yet another alternative: ILSpy from the SharpDevelop community (with Wiki) &#8211;jeroen via The #reflector licensing debacle « The Wiert Corner – irregular stream of Wiert stuff. Filed under: .NET, C#, Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5282&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I updated my <a href="http://wiert.wordpress.com/2011/02/06/the-reflector-licensing-debacle/" target="_blank">first .NET Reflector post</a> with yet another alternative:</p>
<ul>
<li>ILSpy from the SharpDevelop community (with Wiki)</li>
</ul>
<p>&#8211;jeroen</p>
<p>via <a href="http://wiert.wordpress.com/2011/02/06/the-reflector-licensing-debacle/" target="_blank">The #reflector licensing debacle « The Wiert Corner – irregular stream of Wiert stuff</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5282/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5282&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/11/the-reflector-licensing-debacle-ilspy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Stack Overflow ebooks</title>
		<link>http://wiert.me/2011/02/10/stack-overflow-ebooks/</link>
		<comments>http://wiert.me/2011/02/10/stack-overflow-ebooks/#comments</comments>
		<pubDate>Thu, 10 Feb 2011 04:00:43 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[*nix]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C# 2.0]]></category>
		<category><![CDATA[C# 3.0]]></category>
		<category><![CDATA[C# 4.0]]></category>
		<category><![CDATA[Database Development]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi for PHP]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Pingback]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[RegEx]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[SocialMedia]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Stackoverflow]]></category>
		<category><![CDATA[XML/XSD]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5038</guid>
		<description><![CDATA[Greg Hewgill published a bunch Stack Overflow ebooks and StackExchange stats. His readme explains a bit more on the books. The blog he maintains makes up for some nice reading too. Be sure to read the blog entry on the ebooks. &#8211;jeroen via Stack Overflow ebooks. Filed under: *nix, .NET, ASP.NET, C#, C# 2.0, C# 3.0, C# [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5038&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://hewgill.com/" target="_blank">Greg Hewgill</a> published a bunch <a href="http://hewgill.com/~greg/stackoverflow/ebooks/" target="_blank">Stack Overflow ebooks</a> and <a href="http://hewgill.com/~greg/stackoverflow/" target="_blank">StackExchange stats</a>.<br />
His <a href="http://hewgill.com/~greg/stackoverflow/ebooks/readme.html" target="_blank">readme</a> explains a bit more on the books.<br />
<a href="http://ghewgill.livejournal.com/" target="_blank">The blog he maintains</a> makes up for some nice reading too.<br />
Be sure to read the blog <a href="http://ghewgill.livejournal.com/145305.html" target="_blank">entry on the ebooks</a>.</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://hewgill.com/~greg/stackoverflow/ebooks/readme.html">Stack Overflow ebooks</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/power-user/nix/'>*nix</a>, <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/net/asp-net/'>ASP.NET</a>, <a href='http://wiert.me/category/development/software-development/net/c/'>C#</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-20/'>C# 2.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-3-0/'>C# 3.0</a>, <a href='http://wiert.me/category/development/software-development/net/c/c-4-0/'>C# 4.0</a>, <a href='http://wiert.me/category/development/database-development/'>Database Development</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/software-development/delphi/delphi-for-php/'>Delphi for PHP</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/web-development/html/'>HTML</a>, <a href='http://wiert.me/category/development/software-development/web-development/html/html5/'>HTML5</a>, <a href='http://wiert.me/category/development/software-development/java/'>Java</a>, <a href='http://wiert.me/category/development/software-development/web-development/javascript/'>JavaScript</a>, <a href='http://wiert.me/category/pingback/'>Pingback</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/regex/'>RegEx</a>, <a href='http://wiert.me/category/development/software-development/scripting/'>Scripting</a>, <a href='http://wiert.me/category/socialmedia/'>SocialMedia</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>, <a href='http://wiert.me/category/development/database-development/sql/'>SQL</a>, <a href='http://wiert.me/category/development/database-development/sql-server/'>SQL Server</a>, <a href='http://wiert.me/category/pingback/stackoverflow/'>Stackoverflow</a>, <a href='http://wiert.me/category/development/xmlxsd/'>XML/XSD</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5038/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5038/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5038/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5038&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/10/stack-overflow-ebooks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>Beyond Compare 3.2.4.13298 &#8211; Changelog &#8211; Softpedia</title>
		<link>http://wiert.me/2011/02/08/beyond-compare-3-2-4-13298-changelog-softpedia/</link>
		<comments>http://wiert.me/2011/02/08/beyond-compare-3-2-4-13298-changelog-softpedia/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 21:01:49 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Power User]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5271</guid>
		<description><![CDATA[My favourite text comparison tool just got updated on February 7th, 2011. What&#8217;s new in Beyond Compare 3.2.4.13298: &#8220;Select All&#8221; and &#8220;Insert&#8221; are now available in line details but affect main display. Fixed copying to the clipboard including gaps as blank lines. &#8220;Paste&#8221; is now available even if no rows are visible. &#8220;Edit&#8221; is no longer [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5271&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My favourite text comparison tool just got updated on February 7th, 2011.</p>
<p>What&#8217;s new in Beyond Compare 3.2.4.13298:</p>
<ul>
<li>&#8220;Select All&#8221; and &#8220;Insert&#8221; are now available in line details but affect main display.</li>
<li>Fixed copying to the clipboard including gaps as blank lines.</li>
<li>&#8220;Paste&#8221; is now available even if no rows are visible.</li>
<li>&#8220;Edit&#8221; is no longer enabled if no rows are visible.</li>
</ul>
<p>and more&#8230;</p>
<p>&#8211;jeroen</p>
<p>via <a href="http://www.softpedia.com/progChangelog/Beyond-Compare-Changelog-3640.html">Beyond Compare 3.2.4.13298 &#8211; Changelog &#8211; Softpedia</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/power-user/'>Power User</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5271/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5271/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5271/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5271&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/08/beyond-compare-3-2-4-13298-changelog-softpedia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>GExperts 1.34 (Stable Release) was released on January 5, 2011.</title>
		<link>http://wiert.me/2011/02/08/gexperts-1-34-stable-release-was-released-on-january-5-2011/</link>
		<comments>http://wiert.me/2011/02/08/gexperts-1-34-stable-release-was-released-on-january-5-2011/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 04:00:27 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5003</guid>
		<description><![CDATA[I totally forgot to post this earlier this year, so here it goes: GExperts 1.34 (Stable Release) was released on January 5, 2011. It supports Delphi 6 to Delphi XE. You can download it here. From the Change Log in Readme.txt: General: Added support for RAD Studio XE. Minor bugfixes and updates to the help files. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5003&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I totally forgot to post this earlier this year, so here it goes:</p>
<p>GExperts 1.34 (Stable Release) was released on January 5, 2011.<br />
It supports Delphi 6 to Delphi XE.</p>
<p>You can download it <a href="http://gexperts.org/download.html" target="_blank">here</a>.</p>
<p>From the Change Log in <a href="http://gexperts.org/Readme.txt" target="_blank">Readme.txt</a>:</p>
<ul>
<li>General: Added support for RAD Studio XE.  Minor bugfixes and updates to the help files. (Erik)</li>
<li>Set FocusControl: Add tool to assign focus control of labels by selecting the related label and wincontrol or a group of wincontrols, and the tool tries to guess the label to associate with each control.  (Daniel Maltarollo and Erik)</li>
<li>Grep: Allow excluding any number of directories from a search.</li>
<li>Grep: Always center the match line in the Grep Result context pane.</li>
<li>Components to Code: Optionally generate code to free all created components (Peter Dzomlija).</li>
<li>Hide/Show Non-Visual Components: Added support for TFrame designers (Erik).</li>
</ul>
<p>&#8211;jeroen</p>
<p>via <a href="http://gexperts.org/download.html">Download GExperts</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5003/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5003/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5003/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5003&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/08/gexperts-1-34-stable-release-was-released-on-january-5-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
		<item>
		<title>All-In-One Code Framework, your one stop shop for Windows code samples, examples and guidelines &#124; Coding4Fun Blog &#124; Channel 9</title>
		<link>http://wiert.me/2011/02/07/all-in-one-code-framework-your-one-stop-shop-for-windows-code-samples-examples-and-guidelines-coding4fun-blog-channel-9/</link>
		<comments>http://wiert.me/2011/02/07/all-in-one-code-framework-your-one-stop-shop-for-windows-code-samples-examples-and-guidelines-coding4fun-blog-channel-9/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 17:08:23 +0000</pubDate>
		<dc:creator>jpluimers</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://wiert.wordpress.com/?p=5259</guid>
		<description><![CDATA[The All-In-One Code Framework is a valuable asset for your tool box for any Windows development environment. &#8211;jeroen via: All-In-One Code Framework, your one stop shop for Windows code samples, examples and guidelines &#124; Coding4Fun Blog &#124; Channel 9. Filed under: .NET, Delphi, Development, Software Development<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5259&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://channel9.msdn.com/coding4fun/blog/All-In-One-Code-Framework-your-one-stop-shop-for-Windows-code-samples-examples-and-guidelines" target="_blank">All-In-One Code Framework</a> is a valuable asset for your tool box for any Windows development environment.</p>
<p>&#8211;jeroen</p>
<p>via: <a href="http://channel9.msdn.com/coding4fun/blog/All-In-One-Code-Framework-your-one-stop-shop-for-Windows-code-samples-examples-and-guidelines">All-In-One Code Framework, your one stop shop for Windows code samples, examples and guidelines | Coding4Fun Blog | Channel 9</a>.</p>
<br />Filed under: <a href='http://wiert.me/category/development/software-development/net/'>.NET</a>, <a href='http://wiert.me/category/development/software-development/delphi/'>Delphi</a>, <a href='http://wiert.me/category/development/'>Development</a>, <a href='http://wiert.me/category/development/software-development/'>Software Development</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/wiert.wordpress.com/5259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/wiert.wordpress.com/5259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/wiert.wordpress.com/5259/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wiert.me&#038;blog=7443331&#038;post=5259&#038;subd=wiert&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wiert.me/2011/02/07/all-in-one-code-framework-your-one-stop-shop-for-windows-code-samples-examples-and-guidelines-coding4fun-blog-channel-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11dc84116344a9ac90d0c2d01c1d4297?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jpluimers</media:title>
		</media:content>
	</item>
	</channel>
</rss>
