> 変数の宣言部分全体が見えないので、何とも言えませんが、構造体は
> バイトアライメントになってますか?
>
> レコード件数をあらかじめ変数にコピーしておくとか・・・
> long RecMax, lIx= 1;
> RecMax = dbf_rcount(&hJca);
> for (; lIx <= RecMax; lIx++)
> {
> ・・・
どうも、何かまだ設定に不足があるようです。まさに、例示の様にコピーしておいて戻す方法で動作しているのですが、出来たファイルを無理やりメモ帳で見ると、HamlogのHDB配置に無理やり、乗っかったデータ配置構造になっています。
dbf_create(const char *, void *)なのか 2番目の引数 NULL 指定の説明になっていますが?。
dbf_open(const char *, TDBFh *);なのか、2番目の引数
単に TDBFh hJca; と定義して 渡している為なのか。
感じからすると、
dbf_create(const char *, void *) でDBの割り付けを指定した構造体のアドレスを記入しなくてはいけないような気がするのですが、 HAMLOG50.hにはその気配がないので、これもローカル定義???。
このために インデックスファイルもうまく作成できないのかも(Key定義が??)。
書き込みたいデータの構造体は
typedef struct {
char SaFix[5];
char Calls[21],
Date[9];
WORD cfm,
wkd;
char dummy;
} TJcaMas;
///// ずれて見難いかも
Key にしたいのは SaFix 部分のみです
よろしくお願いいたします。