<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments for Micro-ISV.asia</title>
	<atom:link href="http://www.micro-isv.asia/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.micro-isv.asia</link>
	<description>Jan Goyvaerts shares his opinions on the Micro-ISV industry and takes us behind the scenes of Just Great Software, his own Micro-ISV in Asia.</description>
	<pubDate>Fri, 03 Sep 2010 13:44:07 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>Comment on Delphi XE is Coming by Regex Support Added to The RTL in Delphi XE and C++Builder XE - Regex Guru</title>
		<link>http://www.micro-isv.asia/2010/08/delphi-xe-is-coming/#comment-1484</link>
		<dc:creator>Regex Support Added to The RTL in Delphi XE and C++Builder XE - Regex Guru</dc:creator>
		<pubDate>Tue, 24 Aug 2010 08:18:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.micro-isv.asia/?p=85#comment-1484</guid>
		<description>[...] Delphi XE and C++Builder XE will ship with regular expression support built right into the runtime library. The RegularExpressions unit is based on code originally written by Vincent Parrett. It implements a set of classes (records, actually) that mimics the regex classes in the .NET framework. That includes the whole set of convenient static methods as well as automatic cleanup when the record goes out of scope. [...]</description>
		<content:encoded><![CDATA[<p>[...] Delphi XE and C++Builder XE will ship with regular expression support built right into the runtime library. The RegularExpressions unit is based on code originally written by Vincent Parrett. It implements a set of classes (records, actually) that mimics the regex classes in the .NET framework. That includes the whole set of convenient static methods as well as automatic cleanup when the record goes out of scope. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using RawByteString Effectively by Jan Goyvaerts</title>
		<link>http://www.micro-isv.asia/2008/08/using-rawbytestring-effectively/#comment-1473</link>
		<dc:creator>Jan Goyvaerts</dc:creator>
		<pubDate>Tue, 17 Aug 2010 05:15:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.micro-isv.asia/?p=24#comment-1473</guid>
		<description>In Delphi 2010, Char is the same as WideChar.  RawByteString is a string of AnsiChars without a predetermined code page.  You cannot assign a WideChar to a RawByteString and expect the compiler to know what you mean.  When you cast the byte 208 to WideChar you get #$00D0 (latin capital letter eth) regardless of your computer's code page.  When you try to assign this to an AnsiString, the compiler tries to convert the Unicode character to your computer's default code page.  #$00D0 cannot be represented in code page 1521 and thus becomes a question mark.

Try this:

SetLength(rs1, 1);
SetCodePage(rs1, 1251, False);
rs1[1] := AnsiChar(b);

I did not check the Indy sources, but if they cast a Byte to WideChar and then concatenate to RawByteString, that is a bug.</description>
		<content:encoded><![CDATA[<p>In Delphi 2010, Char is the same as WideChar.  RawByteString is a string of AnsiChars without a predetermined code page.  You cannot assign a WideChar to a RawByteString and expect the compiler to know what you mean.  When you cast the byte 208 to WideChar you get #$00D0 (latin capital letter eth) regardless of your computer&#8217;s code page.  When you try to assign this to an AnsiString, the compiler tries to convert the Unicode character to your computer&#8217;s default code page.  #$00D0 cannot be represented in code page 1521 and thus becomes a question mark.</p>
<p>Try this:</p>
<p>SetLength(rs1, 1);<br />
SetCodePage(rs1, 1251, False);<br />
rs1[1] := AnsiChar(b);</p>
<p>I did not check the Indy sources, but if they cast a Byte to WideChar and then concatenate to RawByteString, that is a bug.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using RawByteString Effectively by Lucefer</title>
		<link>http://www.micro-isv.asia/2008/08/using-rawbytestring-effectively/#comment-1471</link>
		<dc:creator>Lucefer</dc:creator>
		<pubDate>Mon, 16 Aug 2010 14:32:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.micro-isv.asia/?p=24#comment-1471</guid>
		<description>Look at this and tell me why???

RAD2010:

var
  rs1 :RawByteString;
  b :byte;
begin
 b := 208;        
 rs1 := char(b);  
now stop here and look for length(rs1) and value of rs1[1]

We have:
Length(rs1) == 1
rs[1] == 63!!! (not 208)
//b=203 is for test purposes only. It's equal Russian 'к' in win1251 (that set in the system by default on XP Prof SP3 eng)

You can find the same thing inside Indy TIdURI.URLDecode where the same on Result := Result + Char(CharCode);</description>
		<content:encoded><![CDATA[<p>Look at this and tell me why???</p>
<p>RAD2010:</p>
<p>var<br />
  rs1 :RawByteString;<br />
  b :byte;<br />
begin<br />
 b := 208;<br />
 rs1 := char(b);<br />
now stop here and look for length(rs1) and value of rs1[1]</p>
<p>We have:<br />
Length(rs1) == 1<br />
rs[1] == 63!!! (not 208)<br />
//b=203 is for test purposes only. It&#8217;s equal Russian &#8216;к&#8217; in win1251 (that set in the system by default on XP Prof SP3 eng)</p>
<p>You can find the same thing inside Indy TIdURI.URLDecode where the same on Result := Result + Char(CharCode);</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on DataHand for Sale Again by Bryan A Rosner</title>
		<link>http://www.micro-isv.asia/2009/01/datahand-for-sale-again/#comment-1460</link>
		<dc:creator>Bryan A Rosner</dc:creator>
		<pubDate>Mon, 28 Jun 2010 07:03:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.micro-isv.asia/?p=51#comment-1460</guid>
		<description>I forgot to mention - the datahand mouse sucks and the best solution I've found is a stylus from Wacom -- a tablet mouse -- it works wonderfully and just like writing, doesn't hurt my hands.</description>
		<content:encoded><![CDATA[<p>I forgot to mention - the datahand mouse sucks and the best solution I&#8217;ve found is a stylus from Wacom &#8212; a tablet mouse &#8212; it works wonderfully and just like writing, doesn&#8217;t hurt my hands.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
