○ HAMLOG50.DLL
HAMLOG50.DLLは、Turbo HAMLOG/Win用のデータベースエンジンです。
MS-DOS版 Turbo HAMLOGの時代に使用していたデータベースエンジンのソースコード(C言語)を、そのまま32ビット化したものですので、信頼性があります。
16ビットパソコンでサクサクと動いていたものを、そのままPentiumマシンで動かすことになるわけですから、そのデータアクセスの高速性は抜群です。(自画自賛モード
hi )
Delphi(デルファイ)で作成したアプリケーションは、通常BDE(ボーランドデータベースエンジン)を使用しますが、配布するファイルサイズが膨大なものになってしまうのと、MS-DOS版Turbo
HAMLOGとのデータ互換性のため、Turbo HAMLOG/WinではBDEを使わずに、従来どおり独自のデータベースエンジンをHAMLOG50.DLLとして作成し、使用しています。
なお、HAMLOG50.DLLのAPI仕様については別途公開しておりますので、技術をお持ちの方はこれをご活用いただいて、Turbo
HAMLOG用のアワード関連のツールでも作っていただければ幸いです。
HAMLOG50.DLLが表示するエラーメッセージは、メッセージボックスのタイトルに HAMLOG50.DLLと書いてあるのでわかります。
以下は、HAMLOG50.DLLが表示するエラーメッセージについてです。
- No2 データファイルの構造が違う
- Turbo HAMLOGのデータフォーマットのファイルでない。
単純にファイルの先頭が 03hもしくは 1Ahかどうかを調べています。
1Ahの場合は、コールサイン中の/を含めてデュープチェックをします。
- No3 インデックスの構造が違う
- Turbo HAMLOGでのインデックス・フォーマットのファイルではない。
通常、強制的にインデックスファイルを作り直しますので、このエラーは表示されません。
- No5 ファイルがオープンできない
- オープンしようとしたファイルが存在しない。
ファイルの属性が「読み取り専用」(書き込めない属性)になっている。
他のソフトで既にオープンしている。
ファイルのユーザー権限が別人のもののためオープンできない。
データフォルダの指定が不正、など。
※CD-ROMからコピーしたファイルは、読み取り専用のままのものが多いのでご注意を!
ファイルの右クリックメニューで、読み取り専用のチェックを外してください。
- No6 メモリーが確保できない
- メモリ不足です。今時のパソコンなら、そんなはずはないのですが・・・。
仮想メモリを使う設定になっていることを確認してください。また、ハードディスクの空き容量を確認してください。
- No7 インデックス読み込みエラー
- インデックスファイルの破壊、又はディスクの不良が考えられます。
通常、強制的にインデックスファイルを作り直しますので、このエラーは表示されません。
- No8 インデックス書き込みエラー
- ディスクが一杯、インデックスファイルの破壊、又はディスクの不良が考えられます。
書き込もうとしたデータのバイト数と、実際に書き込めたバイト数が一致しない場合にエラーを表示させています。
インデックス再構築を実施すれば、直る可能性があります。
- No15 インデックスの再構築が必要
- データとインデックスが不整合だった場合。
通常、強制的にインデックスファイルを作り直しますので、このエラーは表示されません。
- No21 データ読み込みエラー
- データファイルの破壊、又はディスクの不良が考えられます。
読み込もうとしたデータのバイト数と、実際に読み込めたバイト数が一致しない場合にエラーを表示させています。
- No22 データ書き込みエラー
- ディスクが一杯、データファイルの破壊、又はディスクの不良が考えられます。
書き込もうとしたデータのバイト数と、実際に書き込めたバイト数が一致しない場合にエラーを表示させています。
- No27 キー表現式が不正
- インデックスを構築しようとするデータファイルの、ヘッダ部分が破壊されている恐れがあります。
- No25 作業ファイルが作れない
- インデックス構築時や日付時間順ソートなどでは、Tempフォルダに作業ファイルを作ります。Tempフォルダは、
Windows-XPでは、 C:\Documents and Settings\ユーザー名\Local Settings\Temp
Windows-7では、 C:\Users\ユーザー名\AppData\Local\Temp
Tempフォルダが存在しない、作業ドライブの容量が足らない、又はディスク不良が考えられます。
- No30 ユーザーリストの構造が違う
- ユーザーリスト(Userlist.usr)以外のファイルを開こうとしている。
古いユーザーリストを開こうとしている。
- なんらかのエラー発生
- 上記以外のエラーが発生しました。恐らくバグ・・・かも。(^_^;)
(88)