<?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:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>tomatomax.net &#187; Delphi</title>
	<atom:link href="http://blog.tomatomax.net/archives/category/program/delphi/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.tomatomax.net</link>
	<description>Every rule has its exception.</description>
	<lastBuildDate>Wed, 07 Jul 2010 08:41:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/category/program/delphi/feed" />
		<item>
		<title>学習リモコンで送信</title>
		<link>http://blog.tomatomax.net/archives/2299</link>
		<comments>http://blog.tomatomax.net/archives/2299#comments</comments>
		<pubDate>Sun, 27 May 2007 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2299</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>先日に引き続いてBUFFALOのPC-OP-RS1を利用したデータ送信(参考:<a href="http://su-u.jp/juju/" target="_blank">スーの道具箱</a>)。シリアル通信には<a href="http://www.vector.co.jp/soft/win95/prog/se077144.html" target="_blank">Delphi 4用通信コンポーネント(Windows95/98/Me / プログラミング)</a>を使用。送信部分自体は結構前にできていたのだけれども、いろいろ機能を追加してたら時間がかかってしまった。まだまだ作りかけなのだけれども。今後は、常駐させてタイマ機能つけたり、スキンで概観いじれるようにしたりするかも。</p>
<p><a href="http://hp.vector.co.jp/authors/VA013135/guutara.zip" target="_blank">http://hp.vector.co.jp/authors/VA013135/guutara.zip</a></p>
<p>データの入力が面倒なのがきついなぁ。</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2299/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2299" />
	</item>
		<item>
		<title>学習リモコンで受信</title>
		<link>http://blog.tomatomax.net/archives/2292</link>
		<comments>http://blog.tomatomax.net/archives/2292#comments</comments>
		<pubDate>Sat, 05 May 2007 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2292</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>BUFFALOのPC-OP-RS1を利用してデータを受信してみる(参考:<a href="http://su-u.jp/juju/" target="_blank">スーの道具箱</a>)。シリアル通信には<a href="http://www.vector.co.jp/soft/win95/prog/se077144.html" target="_blank">Delphi 4用通信コンポーネント(Windows95/98/Me / プログラミング)</a>を使用。</p>
<p>受信してcsvに落とすプログラム<a href="http://hp.vector.co.jp/authors/VA013135/receive_rc.zip" target="_blank">http://hp.vector.co.jp/authors/VA013135/receive_rc.zip</a>。まだその先の送信作ってないけど。</p>
<p><a name="seemore"></a></p>
<p>かなり適当な通信部分。</p>
<pre class="syntax-highlight">
try
try
ReceiveForm := TReceiveForm.Create(Application);
ReceiveForm.rs232c.portname := COMCombo.<span class="synType">Text</span>;

<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rsopen)<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- open'</span>);
<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rswritechar(<span class="synIdentifier">Chr</span>($72)))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- write'</span>);
<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rsreadchar(c))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- read'</span>);
<span class="synStatement">if</span>(c &#60;&#62; <span class="synIdentifier">Chr</span>($59))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- not Y($59)'</span>);
<span class="synStatement">if</span>(ReceiveForm.ShowModal = mrCancel)<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'cancel'</span>);
<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rsreadchar(c))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- read'</span>);
<span class="synStatement">if</span>(c &#60;&#62; <span class="synIdentifier">Chr</span>($53))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- not S($53)'</span>);

<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rsread(data, <span class="synConstant">240</span>))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- read'</span>);
data[<span class="synConstant">240</span>] := #<span class="synConstant">0</span>;
<span class="synStatement">if</span>(<span class="synStatement">not</span> ReceiveForm.rs232c.rsreadchar(c))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- read'</span>);
<span class="synStatement">if</span>(c &#60;&#62; <span class="synIdentifier">Chr</span>($45))<span class="synStatement">then</span> Raise Exception.Create(<span class="synConstant">'error -- not E($45)'</span>);
ReceiveForm.rs232c.rsclose;

ListItem := DataListView.Items.Add;
ListItem.Caption := name;
ListItem.SubItems.Add(DataToStr(data));
except
on e: Exception <span class="synStatement">do</span>
MessageDlg(e.Message, mtError, [mbOK], <span class="synConstant">0</span>);
<span class="synStatement">end</span>;
finally
ReceiveForm.Free;
<span class="synStatement">end</span>;
</pre>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2292/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2292" />
	</item>
		<item>
		<title>レジストリ</title>
		<link>http://blog.tomatomax.net/archives/2291</link>
		<comments>http://blog.tomatomax.net/archives/2291#comments</comments>
		<pubDate>Sat, 28 Apr 2007 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2291</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>TRegistryクラスでサクサク。下はCOMポート一覧を取り出しているところ。</p>
<pre class="syntax-highlight">
var
i: Integer;
reg: TRegistry;
st: TStringList;
begin
reg := TRegistry.Create;
st := TStringList.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
if(reg.OpenKey(&#39;&#92;HARDWARE&#92;DEVICEMAP&#92;SERIALCOMM&#92;&#39;, False))then
begin
reg.GetValueNames(st);
for i := 0 to st.Count - 1 do
begin
if(reg.GetDataType(st.Strings[i]) = rdString)then
COMCombo.Items.Append(reg.ReadString(st.Strings[i]));
end;
reg.CloseKey;
end;
st.Free;
reg.Free;
</pre>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2291/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2291" />
	</item>
		<item>
		<title>最前面に表示されているウィンドウかどうか調べる</title>
		<link>http://blog.tomatomax.net/archives/2253</link>
		<comments>http://blog.tomatomax.net/archives/2253#comments</comments>
		<pubDate>Fri, 29 Dec 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2253</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>GetWindowLong関数を使って、拡張ウィンドウスタイルを取得すればいいのかな。EnumWindowsあたりと組み合わせて、全てのウィンドウに対して調べてみたり。</p>
<pre class="syntax-highlight">
<span class="synStatement">if</span> (GetWindowLong(Handle, GWL_EXSTYLE) <span class="synStatement">and</span> WS_EX_TOPMOST) = WS_EX_TOPMOST <span class="synStatement">then</span>
ListBox1.AddItem(<span class="synConstant">'OK'</span>, <span class="synConstant">nil</span>)
<span class="synStatement">else</span>
ListBox1.AddItem(<span class="synConstant">'NG'</span>, <span class="synConstant">nil</span>);
</pre>
<p>スーパーpre記法（シンタックス・ハイライト）を使ってみたかっただけでした＞＜</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2253/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2253" />
	</item>
		<item>
		<title>TScrollBar.PageSize</title>
		<link>http://blog.tomatomax.net/archives/2223</link>
		<comments>http://blog.tomatomax.net/archives/2223#comments</comments>
		<pubDate>Sat, 16 Sep 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2223</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>スクロールボックスのサイズ。表示している割合を示すために使うプロパティ。</p>
<p>
<pre>
w := 639 - Panel.Width;
ScrollBarH.Max := w;
ScrollBarH.PageSize := w * Panel.Width <font color="#0000FF">div</font> 639;
</pre>
</p>
<p>幅640の領域をパネルに表示するときの割合。パネルのサイズが640以上になるとまずいのでエラー処理を加える必要あり。</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2223/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2223" />
	</item>
		<item>
		<title>UDP送信</title>
		<link>http://blog.tomatomax.net/archives/2179</link>
		<comments>http://blog.tomatomax.net/archives/2179#comments</comments>
		<pubDate>Tue, 20 Jun 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2179</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>SOCK_DGRAMでソケットを作ったらsendto()でサクっと送信。</p>
<p>
<pre>
sock := socket(PF_INET, SOCK_DGRAM, 0);
sendto(sock, packet, 6 + 6 * 16, 0, addr, sizeof(addr));
closesocket(sock);
</pre>
</p>
<p>WOL用のマジックパケット送信プログラム作ってみました(<a href="http://hp.vector.co.jp/authors/VA013135/mpsend.zip" target="_blank">http://hp.vector.co.jp/authors/VA013135/mpsend.zip</a>)。</p>
<blockquote>
<p>&#62; mpsend.exe 192.168.0.255 12-34-56-78-90-AB</p>
</blockquote>
<p>↑こんな感じで使用。とりあえずこれだけ。</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2179/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2179" />
	</item>
		<item>
		<title>UDP受信</title>
		<link>http://blog.tomatomax.net/archives/2177</link>
		<comments>http://blog.tomatomax.net/archives/2177#comments</comments>
		<pubDate>Fri, 16 Jun 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2177</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>socket関数の第二引数をSOCK_DGRAMにすること。あとはbind。</p>
<p>以下、受信して表示するだけのプログラム。</p>
<p><a name="seemore"></a></p>
<p>
<pre>
<font color="#0000FF">program</font> receive;

<font color="#008080">{$APPTYPE CONSOLE}</font>

<font color="#0000FF">uses</font>
SysUtils,
Winsock;

<font color="#0000FF">procedure</font> dump(b: <font color="#0000FF">array</font> <font color="#0000FF">of</font> byte);
<font color="#0000FF">var</font>
i, size: Integer;
<font color="#0000FF">begin</font>
size := Length(b);
Write(<font color="#800080">'       +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f'</font>);
<font color="#0000FF">for</font> i := 0 <font color="#0000FF">to</font> size - 1 <font color="#0000FF">do</font>
<font color="#0000FF">begin</font>
<font color="#0000FF">if</font>(i <font color="#0000FF">mod</font> 16 = 0)<font color="#0000FF">then</font>
Write(#13#10 + Format(<font color="#800080">'0x%.4x '</font>, [i]));
Write(Format(<font color="#800080">'%.2x '</font>, [b[i));
<font color="#0000FF">end</font>;
<font color="#0000FF">end</font>;

<font color="#0000FF">var</font>
wsa: TWSAData;
sock: TSocket;
addr: TSockAddrIn;
buf: <font color="#0000FF">array</font>[0..6 + 16 * 6 - 1] <font color="#0000FF">of</font> Byte;
<font color="#0000FF">begin</font>
<font color="#0000FF">if</font>(WSAStartup($0101, wsa) &#60;&#62; 0)<font color="#0000FF">then</font>
<font color="#0000FF">raise</font> Exception.Create(<font color="#800080">'WSAStartup'</font>);
sock := socket(PF_INET, SOCK_DGRAM, 0);

addr.sin_family := AF_INET;
addr.sin_port := htons(2034);
addr.sin_addr.S_addr := INADDR_ANY;

bind(sock, addr, Sizeof(addr));
recv(sock, buf, 6 + 16 * 6, 0);

dump(buf);

closesocket(sock);
<font color="#0000FF">if</font>(WSACleanup &#60;&#62; 0)<font color="#0000FF">then</font>
<font color="#0000FF">raise</font> Exception.Create(<font color="#800080">'WSACleanup'</font>);
<font color="#008080">{$WARNINGS OFF}</font>
<font color="#0000FF">if</font>(DebugHook &#60;&#62; 0)<font color="#0000FF">then</font>
Readln; <font color="#008080">// IDEでの起動時は一旦停止</font>
<font color="#008080">{$WARNINGS ON}</font>
<font color="#0000FF">end</font>.
</pre>
</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2177/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2177" />
	</item>
		<item>
		<title>Winsockの初期化</title>
		<link>http://blog.tomatomax.net/archives/2172</link>
		<comments>http://blog.tomatomax.net/archives/2172#comments</comments>
		<pubDate>Sat, 27 May 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2172</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>いまさら感が否めないけれども、またネットワークをいじりたくなってきたので結構昔のソースを発掘。</p>
<p>
<pre>
<font color="#0000FF">uses</font>
... , Winsock;

...

<font color="#0000FF">var</font>
r: Integer;
WSAData: TWSAData;
version: WORD;
<font color="#0000FF">begin</font>
<font color="#008080">// WinSockの初期化</font>
version := $0002;
r := WSAStartup(version, WSAData); <font color="#008080">// Version 2.0</font>
<font color="#0000FF">if</font>(r &#60;&#62; 0)<font color="#0000FF">then</font>
<font color="#0000FF">begin</font>
version := $0101;
r := WSAStartup(version, WSAData);
<font color="#0000FF">if</font>(r &#60;&#62; 0)<font color="#0000FF">then</font>
<font color="#0000FF">raise</font> Exception.Create(<font color="#800080">'Winsockの初期化に失敗しました:'</font>) <font color="#0000FF">at</font> @r;
<font color="#0000FF">end</font>;
<font color="#0000FF">end</font>;
</pre>
</p>
<p>終了時はWSACleanup()を忘れずに。</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2172/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2172" />
	</item>
		<item>
		<title>拡張子判定</title>
		<link>http://blog.tomatomax.net/archives/2156</link>
		<comments>http://blog.tomatomax.net/archives/2156#comments</comments>
		<pubDate>Sat, 15 Apr 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2156</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>文字列の終わりに拡張子が入っているかどうかをAnsiEndsTextで判定。</p>
<p>
<pre>
<font>s</font> := <font>SaveDialog1</font>.<font>FileName</font>;
<font color="#0000FF">if</font>(<font color="#0000FF">not</font> <font>AnsiEndsText</font>(<font>s</font>, <font color="#800080">'.ini'</font>))<font color="#0000FF">then</font>
<font>s</font> := <font>s</font> + <font color="#800080">'.ini'</font>;
</pre>
</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2156/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2156" />
	</item>
		<item>
		<title>シャングハイ</title>
		<link>http://blog.tomatomax.net/archives/2155</link>
		<comments>http://blog.tomatomax.net/archives/2155#comments</comments>
		<pubDate>Sat, 15 Apr 2006 15:00:00 +0000</pubDate>
		<dc:creator>maruguu</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Program]]></category>

		<guid isPermaLink="false">http://blog.tomatomax.net/archives/2155</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>つ<a href="http://hp.vector.co.jp/authors/VA013135/shanguhai.zip" target="_blank">http://hp.vector.co.jp/authors/VA013135/shanguhai.zip</a></p>
<p>多少アップデートしたのをすっかり忘れてた。</p>
</div>
<p><script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 336x280, 作成済み 10/04/25 */
google_ad_slot = "6994973421";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<script type="text/javascript"><!--
google_ad_client = "pub-0582565723906120";
/* 200x90, 作成済み 10/04/25 */
google_ad_slot = "9492987907";
google_ad_width = 200;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.tomatomax.net/archives/2155/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.tomatomax.net/archives/2155" />
	</item>
	</channel>
</rss>
