弐条海月の とはずがたり

そこはかとなく書き綴るブログなるもの

» 2011-06-27の日記

HSP、プログラムの改良…

サーバー内で常駐動作させているフォルダ監視プログラムを改良することにしました。このプログラムはJPG、BMP、EPSなどの画像ファイルが所定のフォルダに追加された場合、画像を格納するフォルダに移動するアプリケーション。過去にWindowsで動作するフリーのインタプリタ型プログラム言語「HSP(Hot Soup Processor)」にて開発したもので、今回は機能を追加してテキストファイルも監視できる処理を書き加えます。先日の日記で書いた、テキストファイルの末尾に入った改行を自動で取り除くためのプログラム、アレです(笑)。今日はそのお話。

サーバーないで動作させていたアプリは「画像監視V3」という名称でしたが、テキストファイルも監視対象に加るのでこのままでは不適切ですよね。よって「仕分け屋ジロー」と命名。あ、名前は何となくのフィーリングです(笑)。

まずは設定ファイルをサーバー環境用から、ローカル開発環境でのテスト用に書き換えて実行させてみます。するとさっそくのエラー(笑)。4年間で何か変わったことは…自作モジュールのファイル名およびその関数名ですね。それらを変更して再度実行。エラー(笑)。エラーをはき出す部分を精査してみるとscreen命令。単にウィンドウを生成するところです。「記述に何もおかしなところはないのにおかしいな」と思い、テストでscreen命令を適当なサイズで書いてみると…そこまでは動作するではありませんか。

そこで気づいたこと。このアプリは省スペース設計なので、ウィンドウタイトルだけしか表示せず、ウィンドウタイトルに動作状態を表示する仕様。ですから横幅220pxに対し、縦幅は0pxの設定だったんですね。そこで気づいたことは…HSP3.2ではウィンドウサイズの最低値が0ではなくなったのではないかということ。試しに縦幅を1にしてみたところ…問題なく動作(笑)。まぁ、そんな感じで開発を進めていこうと思います。
処理対象のファイルは拡張子をリスト化して設定ファイルの中に書き込んでいたのですが、当初は.EPS.eps.JPG.jpgのように大文字と小文字の拡張子を記述し、ピリオドで分割して取り出しフォルダ内のファイルリストから検索していたのですが、よく動作を確認すると大文字と小文字の区別を付けていないことが分かったので、小文字の拡張子はリストから外しました。これだけで動作速度が2倍になりました(笑)。

実際のリストはこちらです。

.EPS.PSD.AI.JPG.JPEG.GIF.BMP.TXT

ここに新たにテキストファイルの拡張子.TXTを追加するわけですが、圧倒的にテキストファイルを監視するほうが多いことから、設定ファイルに書き込む.TXTの拡張子の数を増やしました。

.EPS.TXT.PSD.TXT.AI.TXT.JPG.TXT.JPEG.TXT.GIF.TXT.BMP.TXT

見ての通りものすごく強引な力業(ちからわざ)ですが、これで期待する動作を十分にこなしてくれそうです。
と思いきや、画像を発見した時のルーチンとテキスト処理のルーチンは別にしたほうが効率が良いので、結局テキストを見つけた時は別のサブルーチンに移動し、テキストの数だけ繰り返して処理する仕様にしました。その結果、.TXTはやはり一つで良くなりました。

.TXT.EPS.PSD.AI.JPG.JPEG.GIF.BMP

今日のローカルでの動作テストは良い感じだったので、明日は実際にサーバ上でテストします。設定ファイルを書き換えてサーバー対応にしてからの作業。うまくいけば次はまた前から取り組んでいるアプリケーション開発に戻ります。


固定ページ

最近の投稿

カテゴリー





カレンダー

2011年6月
 12345
6789101112
13141516171819
20212223242526
27282930  

過去の日記はこちら

キーワードで検索