<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Merlin&#039;s Delphi Forge &#187; object pascal</title>
	<atom:link href="http://www.delphifaq.net/tag/object-pascal/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.delphifaq.net</link>
	<description>By a Programmer for Programmers...</description>
	<lastBuildDate>Sat, 13 Mar 2010 19:00:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>How to Base 64 (MIME) Encode and Decode a String</title>
		<link>http://www.delphifaq.net/how-to-base-64-mime-encode-and-decode-a-string/</link>
		<comments>http://www.delphifaq.net/how-to-base-64-mime-encode-and-decode-a-string/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:27:43 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[64]]></category>
		<category><![CDATA[array]]></category>
		<category><![CDATA[ascii character]]></category>
		<category><![CDATA[base]]></category>
		<category><![CDATA[Base64Decode]]></category>
		<category><![CDATA[Base64Encode]]></category>
		<category><![CDATA[binary files]]></category>
		<category><![CDATA[borland]]></category>
		<category><![CDATA[byte]]></category>
		<category><![CDATA[decode]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[encode]]></category>
		<category><![CDATA[Kylix]]></category>
		<category><![CDATA[mime]]></category>
		<category><![CDATA[mime encoding]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[pascal]]></category>
		<category><![CDATA[shl]]></category>
		<category><![CDATA[shr]]></category>
		<category><![CDATA[string]]></category>
		<category><![CDATA[string format]]></category>
		<category><![CDATA[string string]]></category>
		<category><![CDATA[string text]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-base-64-mime-encode-and-decode-a-string</guid>
		<description><![CDATA[MIME encoding and decoding is used when transferring binary files over the Internet. Every byte is converted to an ASCII character that can be transfered with no problems. This is the code to encode and decode using Base 64 (MIME). You can TMemo&#8216;s and TRichEdit&#8216;s string text via the Text property. The original code has [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-base-64-mime-encode-and-decode-a-string/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to Determine the Screen Resolution</title>
		<link>http://www.delphifaq.net/how-to-determine-the-screen-resolution/</link>
		<comments>http://www.delphifaq.net/how-to-determine-the-screen-resolution/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:14:25 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[Graphics]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[check]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[determine]]></category>
		<category><![CDATA[getsystemmetrics function]]></category>
		<category><![CDATA[height]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[pixels]]></category>
		<category><![CDATA[resolution]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[size]]></category>
		<category><![CDATA[sm]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[vcl]]></category>
		<category><![CDATA[width]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows api]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-determine-the-screen-resolution</guid>
		<description><![CDATA[There are two ways to determine the screen&#8217;s height and width. 1) Use the global Screen variable. uses Forms; ... Screen.Height { Screen height in pixels } Screen.Width { Screen width in pixels } ... 2) Use the Windows API GetSystemMetrics() function. This function can be useful in applications that don&#8217;t use the VCL like [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-determine-the-screen-resolution/feed/</wfw:commentRss>
		<slash:comments>-4</slash:comments>
		</item>
		<item>
		<title>How to Create a Gradient Form</title>
		<link>http://www.delphifaq.net/how-to-create-a-gradient-form/</link>
		<comments>http://www.delphifaq.net/how-to-create-a-gradient-form/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:13:23 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[Graphics]]></category>
		<category><![CDATA[about]]></category>
		<category><![CDATA[about box]]></category>
		<category><![CDATA[aboutbox]]></category>
		<category><![CDATA[angle]]></category>
		<category><![CDATA[btn]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[color rgb]]></category>
		<category><![CDATA[create]]></category>
		<category><![CDATA[delphi 3]]></category>
		<category><![CDATA[delphi 4]]></category>
		<category><![CDATA[delpi]]></category>
		<category><![CDATA[different color]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[gradient]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[parameters]]></category>
		<category><![CDATA[pen color]]></category>
		<category><![CDATA[setup programs]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[window]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-create-a-gradient-form</guid>
		<description><![CDATA[In setup programs or sometimes in AboutBoxes you can find gradient forms. It sure looks as if it were a lot of work but it&#8217;s really very easy. All you have to do is add this code to your program. This example will create a gradient rectangle on the whole form Canvas. To change it&#8217;s [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-create-a-gradient-form/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Convert TColor to a Hex String and Vice Versa</title>
		<link>http://www.delphifaq.net/how-to-convert-tcolor-to-a-hex-string-and-vice-versa/</link>
		<comments>http://www.delphifaq.net/how-to-convert-tcolor-to-a-hex-string-and-vice-versa/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:12:17 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[Graphics]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[colors]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[hex]]></category>
		<category><![CDATA[hex digit]]></category>
		<category><![CDATA[hex number]]></category>
		<category><![CDATA[hex string]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[parameters]]></category>
		<category><![CDATA[rgb]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[string]]></category>
		<category><![CDATA[string name]]></category>
		<category><![CDATA[string representation]]></category>
		<category><![CDATA[string string]]></category>
		<category><![CDATA[tcolor]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[web palette]]></category>
		<category><![CDATA[windows api]]></category>
		<category><![CDATA[xxxxxx]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-convert-tcolor-to-a-hex-string-and-vice-versa</guid>
		<description><![CDATA[Delphi uses TColor to represent colors but HTML requires a string name (139 colors have names in the web palette) or a hex number. Here&#8217;s the code to convert a TColor color value to hex a string and vise versa. The functions use the Windows API GetRValue(), GetBValue(), GetGValue() and RGB() functions. !Note: If your [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-convert-tcolor-to-a-hex-string-and-vice-versa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Stretch an Icon</title>
		<link>http://www.delphifaq.net/how-to-stretch-an-icon/</link>
		<comments>http://www.delphifaq.net/how-to-stretch-an-icon/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:09:41 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[Graphics]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[new icon]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[routine]]></category>
		<category><![CDATA[size]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[strech]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows api]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-stretch-an-icon</guid>
		<description><![CDATA[Although Delphi&#8217;s StretchDraw() function should work for icons it doesn&#8217;t The way to get round this is to use the Windows API DrawIconEx() function. (* iNewWidth - (Integer) New icon width ** iNewHeight - (Integer) New icon height *) DrawIconEx(Canvas.Handle, 0, 0, Icon.Handle, iNewWidth, iNewHeight, 0, 0, DI_NORMAL);]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-stretch-an-icon/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Find Out if a Program is Running</title>
		<link>http://www.delphifaq.net/how-to-find-out-if-a-program-is-running/</link>
		<comments>http://www.delphifaq.net/how-to-find-out-if-a-program-is-running/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:08:17 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[boolean]]></category>
		<category><![CDATA[check]]></category>
		<category><![CDATA[check result]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[dll function]]></category>
		<category><![CDATA[dll name]]></category>
		<category><![CDATA[executable name]]></category>
		<category><![CDATA[executed]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[kernel32 dll]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[routine checks]]></category>
		<category><![CDATA[running]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows processes]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-find-out-if-a-program-is-running</guid>
		<description><![CDATA[I received tip from Mike Gajewski, one of our readers. This is the code you need to find out if a certain program is running. The IsProcess() routine checks if the specific filename is running. This tip can be useful when your application should or needs some other application running in order to run properly/at [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-find-out-if-a-program-is-running/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>How to Create Elliptic Forms</title>
		<link>http://www.delphifaq.net/how-to-create-elliptic-forms/</link>
		<comments>http://www.delphifaq.net/how-to-create-elliptic-forms/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:06:56 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[circle]]></category>
		<category><![CDATA[circle work]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[create]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[elliptic]]></category>
		<category><![CDATA[forms]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[rectangle]]></category>
		<category><![CDATA[shape]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[splash screen]]></category>
		<category><![CDATA[square]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[weird shapes]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-create-elliptic-forms</guid>
		<description><![CDATA[Ever wanted to create forms that had a cool shape? How about an elliptic form? This would make a nice splash screen, wouldn&#8217;t it? Sure. But how can I create one of these? Hmmmm&#8230; Well, Windows 32 bit has all we need. CreateEllipticRgn() allows you to create an elliptic region. After we do so all [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-create-elliptic-forms/feed/</wfw:commentRss>
		<slash:comments>-650</slash:comments>
		</item>
		<item>
		<title>How to Determine if There is Anything in the Clipboard</title>
		<link>http://www.delphifaq.net/how-to-determine-if-there-is-anything-in-the-clipboard/</link>
		<comments>http://www.delphifaq.net/how-to-determine-if-there-is-anything-in-the-clipboard/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:02:58 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[clipboard]]></category>
		<category><![CDATA[clipboard changes]]></category>
		<category><![CDATA[clipboard contents]]></category>
		<category><![CDATA[clipboard viewer chain]]></category>
		<category><![CDATA[clipboard viewer window]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[copy]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[determine]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[paste]]></category>
		<category><![CDATA[paste function]]></category>
		<category><![CDATA[paste menu]]></category>
		<category><![CDATA[sendmessage]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows messages]]></category>
		<category><![CDATA[wm]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-determine-if-there-is-anything-in-the-clipboard</guid>
		<description><![CDATA[When creating a text editor (or any other kind of program that uses the Clipboard you always insert code to determine if there is anything to copy or cut and to update the menus. Well, you should also do this for the paste function. The whole idea is based on Windows messages and is very [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-determine-if-there-is-anything-in-the-clipboard/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to Print Text</title>
		<link>http://www.delphifaq.net/how-to-print-text/</link>
		<comments>http://www.delphifaq.net/how-to-print-text/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 03:01:00 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[aport]]></category>
		<category><![CDATA[buffer size]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[lpt]]></category>
		<category><![CDATA[lpt1]]></category>
		<category><![CDATA[nil]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[print]]></category>
		<category><![CDATA[rewrite]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[text]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows api]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-print-text</guid>
		<description><![CDATA[This is the harder way to print text in Delphi If you want to do it the easier way check out tip 4.1. Well, if for some reasons you may want to print using the Windows API here&#8217;s the code: Code 1: uses Printers, WinSpool; ... var aDriver, aPort, aPrinterName: array[0..255] of Char; { aDriver [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-print-text/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Remove the Form&#8217;s Caption</title>
		<link>http://www.delphifaq.net/how-to-remove-the-forms-caption/</link>
		<comments>http://www.delphifaq.net/how-to-remove-the-forms-caption/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 02:57:14 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[caption]]></category>
		<category><![CDATA[caption bar]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[delphi vcl]]></category>
		<category><![CDATA[example]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[move]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[setup programs]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[title]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[window]]></category>
		<category><![CDATA[windows api]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-remove-the-forms-caption</guid>
		<description><![CDATA[You may have wanted to create a form that doesn&#8217;t have a caption bar, just like the one&#8217;s you may see in setup programs. Delphi VCL doesn&#8217;t give you but you can also use the Windows API Just add this code to you form&#8217;s OnCreate method: SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_STYLE) and not WS_CAPTION); Height := [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-remove-the-forms-caption/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Access the Registry Using Windows API</title>
		<link>http://www.delphifaq.net/how-to-access-the-registry-using-windows-api/</link>
		<comments>http://www.delphifaq.net/how-to-access-the-registry-using-windows-api/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 02:55:45 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[access]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[api functions]]></category>
		<category><![CDATA[boolean value]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[delphi faq]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[hkey local machine]]></category>
		<category><![CDATA[hyve]]></category>
		<category><![CDATA[integer value]]></category>
		<category><![CDATA[machine key]]></category>
		<category><![CDATA[native win32]]></category>
		<category><![CDATA[nil reg]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[read]]></category>
		<category><![CDATA[registry]]></category>
		<category><![CDATA[regopenkeyex function]]></category>
		<category><![CDATA[rejestr]]></category>
		<category><![CDATA[routine]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[string value]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[win32 functions]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[write]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-access-the-registry-using-windows-api</guid>
		<description><![CDATA[You may, for some reasons not want to use Delphi&#8217;s TRegistry component but still want to use the system&#8217;s Registry. This may come in handy when creating applications for Windows NT/2000/XP/Vista. Delphi&#8217;s TRegistry component will raise an error when attempting to write a string value to the HKEY_LOCAL_MACHINE key. Well, the way to get over [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-access-the-registry-using-windows-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Disable the Alt + Tab Shortcut</title>
		<link>http://www.delphifaq.net/how-to-disable-the-alt-tab-shortcut/</link>
		<comments>http://www.delphifaq.net/how-to-disable-the-alt-tab-shortcut/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 02:54:38 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[9x nt]]></category>
		<category><![CDATA[alt]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[disable]]></category>
		<category><![CDATA[enable]]></category>
		<category><![CDATA[keyboard combination]]></category>
		<category><![CDATA[keyboard sequence]]></category>
		<category><![CDATA[nt 2000]]></category>
		<category><![CDATA[nt 4]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[reboot]]></category>
		<category><![CDATA[shortcut]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tab]]></category>
		<category><![CDATA[tab keyboard]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows 9x]]></category>
		<category><![CDATA[windows nt systems]]></category>
		<category><![CDATA[windows procedure]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-disable-the-alt-tab-shortcut</guid>
		<description><![CDATA[For some reason you may want your program to disable the Alt + Tab keyboard sequence. This procedure will do this for you. This function will have no effect on Windows 9x/NT 4.0/2000/ME/XP/Vista because in these operating systems the Alt + Tab keyboard combination is always active. !!Note: This code will only work on Windows [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-disable-the-alt-tab-shortcut/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Disable the Ctrl + Alt + Delete Shortcut</title>
		<link>http://www.delphifaq.net/how-to-disable-the-ctrl-alt-delete-shortcut/</link>
		<comments>http://www.delphifaq.net/how-to-disable-the-ctrl-alt-delete-shortcut/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 02:53:16 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[alt]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[ctrl]]></category>
		<category><![CDATA[ctrl alt delete]]></category>
		<category><![CDATA[del]]></category>
		<category><![CDATA[delete]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[disable]]></category>
		<category><![CDATA[enable]]></category>
		<category><![CDATA[nt 2000]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[reboot]]></category>
		<category><![CDATA[shortcut]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[windows 9x]]></category>
		<category><![CDATA[windows nt systems]]></category>
		<category><![CDATA[windows procedure]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/how-to-disable-the-ctrl-alt-delete-shortcut</guid>
		<description><![CDATA[For some reason you may want your program to disable the Ctrl + Alt + Delete shortcut. To do so you can use this code. !!Note: This code will only work on Windows 9x and ME. This function on Windows NT systems (NT, 2000, XP or Vista) will have NO effect. uses Windows; ... procedure [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-disable-the-ctrl-alt-delete-shortcut/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is Delphi?</title>
		<link>http://www.delphifaq.net/what-is-delphi/</link>
		<comments>http://www.delphifaq.net/what-is-delphi/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 01:02:52 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[About Delphi]]></category>
		<category><![CDATA[borland]]></category>
		<category><![CDATA[compiler]]></category>
		<category><![CDATA[define]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[description]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[rad]]></category>
		<category><![CDATA[source code]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/what-is-delphi</guid>
		<description><![CDATA[Delphi is the descendant of Turbo Pascal, which was first released in 1983 for the CP/M operating system. Turbo Pascal was ported to MS-DOS in early 1984. During the early history of the IBM PC, Turbo Pascal was arguably the most popular language for serious development work &#8211; mostly because it was a real compiler, [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/what-is-delphi/feed/</wfw:commentRss>
		<slash:comments>-3</slash:comments>
		</item>
		<item>
		<title>How to Create Multiple Directories</title>
		<link>http://www.delphifaq.net/how-to-create-multiple-directories/</link>
		<comments>http://www.delphifaq.net/how-to-create-multiple-directories/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 01:02:09 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[borland]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[create]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[directories]]></category>
		<category><![CDATA[folders]]></category>
		<category><![CDATA[freeware]]></category>
		<category><![CDATA[inside]]></category>
		<category><![CDATA[multiple]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[sources]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-create-multiple-directories</guid>
		<description><![CDATA[The standard MkDir() function can create only one directory, it can not create subdirectories at one time. This function allows you to create multiple directories (directories inside directories). Delphi 4+ has the ForceDirectories() routine which does the same thing. It is declared in the FileCtrl unit. uses SysUtils, FileCtrl; ... procedure MkDirMulti(sPath: string); begin if [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-create-multiple-directories/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>How to Use Animated Cursors in Your Programs</title>
		<link>http://www.delphifaq.net/how-to-use-animated-cursors-in-your-programs/</link>
		<comments>http://www.delphifaq.net/how-to-use-animated-cursors-in-your-programs/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 01:00:47 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[Graphics]]></category>
		<category><![CDATA[ani]]></category>
		<category><![CDATA[animated]]></category>
		<category><![CDATA[change]]></category>
		<category><![CDATA[cur]]></category>
		<category><![CDATA[cursor]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[gif]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[swap]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[use]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-use-animated-cursors-in-your-programs</guid>
		<description><![CDATA[Animated cursors have become very popular in the days of Windows 3.x. Now they have become a part of Windows 95 and newer. Sometimes you might want to use your own animated cursors instead of the user&#8217;s. The idea is same as with &#8220;normal&#8221; cursors. Here&#8217;s the code: const btCursorID1 = 1; begin (* sCursorFile [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-use-animated-cursors-in-your-programs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Print Text and Text Files in Delphi</title>
		<link>http://www.delphifaq.net/how-to-print-text-and-text-files-in-delphi/</link>
		<comments>http://www.delphifaq.net/how-to-print-text-and-text-files-in-delphi/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:59:38 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[files]]></category>
		<category><![CDATA[ink]]></category>
		<category><![CDATA[laser]]></category>
		<category><![CDATA[lpt]]></category>
		<category><![CDATA[lpt1]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[parallel]]></category>
		<category><![CDATA[print]]></category>
		<category><![CDATA[printer]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[text]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-print-text-and-text-files-in-delphi</guid>
		<description><![CDATA[This code how to print text and text files. This is the simplest way to print without using any external functions. All you have to do is open the LPT1 port (this is the default printer port) as if it where a file. This code can be easily ported to Turbo Pascal (just change the [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-print-text-and-text-files-in-delphi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Clear Multiple Edits Without Refering to Them One by One</title>
		<link>http://www.delphifaq.net/how-to-clear-multiple-edits-without-refering-to-them-one-by-one/</link>
		<comments>http://www.delphifaq.net/how-to-clear-multiple-edits-without-refering-to-them-one-by-one/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:56:59 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[at once]]></category>
		<category><![CDATA[borland]]></category>
		<category><![CDATA[clear]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[edit]]></category>
		<category><![CDATA[multiple]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tedit]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-clear-multiple-edits-without-refering-to-them-one-by-one</guid>
		<description><![CDATA[Let&#8217;s say you have a data entry form or a MP3 ID3 tag editor form. The user clicks the &#8220;Clear&#8221; button. The more edit controls you have the less you want to write the code to clear them Well, here&#8217;s a better idea: procedure TMainForm.btnClear(Sender: TObject); var iI: Integer; begin for iI := 0 to [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-clear-multiple-edits-without-refering-to-them-one-by-one/feed/</wfw:commentRss>
		<slash:comments>-6</slash:comments>
		</item>
		<item>
		<title>How to Get the Windows System Directory</title>
		<link>http://www.delphifaq.net/how-to-get-the-windows-system-directory/</link>
		<comments>http://www.delphifaq.net/how-to-get-the-windows-system-directory/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:56:12 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[directory]]></category>
		<category><![CDATA[folder]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[GetWindowsDirectory]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-get-the-windows-system-directory</guid>
		<description><![CDATA[To found out the name of the Windows directory it&#8217;s best to use the Windows API GetSystemDirectory() function. Here&#8217;s the Delphi implementation: uses Windows; ... function GetSystemDir: string; const (* The length of the directory buffer. Usually 64 or even 16 is enough ** ** Must be DWORD type. *) dwLength: DWORD = 255; var [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-get-the-windows-system-directory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Get the Windows Directory</title>
		<link>http://www.delphifaq.net/how-to-get-the-windows-directory/</link>
		<comments>http://www.delphifaq.net/how-to-get-the-windows-directory/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:55:20 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[directory]]></category>
		<category><![CDATA[folder]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[GetWindowsDirectory]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-get-the-windows-directory</guid>
		<description><![CDATA[To found out the name of the Windows directory it&#8217;s best to use the Windows API GetWindowsDirectory() function. Here&#8217;s the Delphi implementation: uses Windows; ... function GetWindowsDir: string; const (* The length of the directory buffer. Usually 64 or even 16 is enough ** ** Must be DWORD type. *) dwLength: DWORD = 255; var [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-get-the-windows-directory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Get Free Space Size on Disks Larger than 2.1GB</title>
		<link>http://www.delphifaq.net/how-to-get-free-space-size-on-disks-larger-than-21gb/</link>
		<comments>http://www.delphifaq.net/how-to-get-free-space-size-on-disks-larger-than-21gb/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:53:51 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[95b]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[GetDiskFreeSpaceEx]]></category>
		<category><![CDATA[kernel32.dll]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[osr2]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[space]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-get-free-space-size-on-disks-larger-than-21gb</guid>
		<description><![CDATA[To get the free space size on a drive larger than 2.1 GB you should use the GetDiskFreeSpaceEx() function from Kernel32.dll. Although Delphi 3+ has the function implemention in the Windows unit I have decided to include it&#8217;s Delphi port. !!Note: This function has been introduced in Windows 95 OSR 2 (95b), so you won&#8217;t [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-get-free-space-size-on-disks-larger-than-21gb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Stop Your Program for a Period of Time</title>
		<link>http://www.delphifaq.net/how-to-stop-your-program-for-a-period-of-time/</link>
		<comments>http://www.delphifaq.net/how-to-stop-your-program-for-a-period-of-time/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:52:49 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[execution]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[milliseconds]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[period]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[seconds]]></category>
		<category><![CDATA[sleep]]></category>
		<category><![CDATA[stop]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-stop-your-program-for-a-period-of-time</guid>
		<description><![CDATA[The easiest way to stop execution of your program is to use the Windows API Sleep() function. The function stops the program for n milliseconds. The only problem is that this function does not properly support multitasking, so during this time your program will not process any Windows messages, so you may want to check [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-stop-your-program-for-a-period-of-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Create Links</title>
		<link>http://www.delphifaq.net/how-to-create-links/</link>
		<comments>http://www.delphifaq.net/how-to-create-links/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:50:27 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[clx]]></category>
		<category><![CDATA[create]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[generate]]></category>
		<category><![CDATA[link]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[proper]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[vcl]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-create-links</guid>
		<description><![CDATA[Setup programs automatically can create links to your programs on the desktop, in the Start Menu or wherever you want. WinAmp allows you to create links on the desktop, in the Start menu and in the QuickLaunch menu. Wouldn&#8217;t it be cool if your program could do the same? There are Delphi components that do [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-create-links/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Add Files to the Start&#124;Documents Menu</title>
		<link>http://www.delphifaq.net/how-to-add-files-to-the-startdocuments-menu/</link>
		<comments>http://www.delphifaq.net/how-to-add-files-to-the-startdocuments-menu/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:49:16 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[add]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[documents]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[file name]]></category>
		<category><![CDATA[menu]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[parameter]]></category>
		<category><![CDATA[pchar]]></category>
		<category><![CDATA[start]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-add-files-to-the-startdocuments-menu</guid>
		<description><![CDATA[Windows keeps track of the files you work with ands them to the Start&#124;Documents menu. If you want to add documents to this menu from your program, just use the SHAddToRecentDocs() function. The function requires a PChar parameter but so you can use aways either typecast strings to PChars or use the StrPCopy() function. uses [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-add-files-to-the-startdocuments-menu/feed/</wfw:commentRss>
		<slash:comments>-6</slash:comments>
		</item>
		<item>
		<title>How to Delete Files with the Ability to Recycle</title>
		<link>http://www.delphifaq.net/how-to-delete-files-with-the-ability-to-recycle/</link>
		<comments>http://www.delphifaq.net/how-to-delete-files-with-the-ability-to-recycle/#comments</comments>
		<pubDate>Thu, 16 Dec 1999 00:47:02 +0000</pubDate>
		<dc:creator>m3Rlin</dc:creator>
				<category><![CDATA[System]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[clx]]></category>
		<category><![CDATA[delete]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[documents]]></category>
		<category><![CDATA[files]]></category>
		<category><![CDATA[mdf]]></category>
		<category><![CDATA[object pascal]]></category>
		<category><![CDATA[recycle]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[trick]]></category>
		<category><![CDATA[vcl]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.delphifaq.net/faq/how-to-delete-files-with-the-ability-to-recycle</guid>
		<description><![CDATA[If you want to delete a file and have the ability to recycle it you should better forget about low-level functions such as DeleteFile(). You need to use the Shell API functions in order to use the recycle bin. This is because deleting files with the use of the recycle bin is not just moving [...]]]></description>
		<wfw:commentRss>http://www.delphifaq.net/how-to-delete-files-with-the-ability-to-recycle/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
	</channel>
</rss>
