- PR -

巨大ファイルのロックができません(VC++5.0)

1
投稿者投稿内容
bison
会議室デビュー日: 2009/03/04
投稿数: 1
お住まい・勤務地: 東京都
投稿日時: 2009-03-04 17:31
はじめまして。

当方、未だにVC++5.0でファイル操作を行うdllを作成しておりますが、
巨大ファイルの扱いで問題が発生しています。

といいますのは、低水準入出力関数でファイル操作をしておりまして、
それぞれファイルオープン、ファイルポインタの移動、読み書きは、
_sopen(),_lseeki64(),_read(),_write()でできておりますが、
ファイル一部分のロックおよび開放の関数の_locking()に関しまして、
巨大ファイルにおいてファイルポインタが、32bitの限界を超える値
を超えた箇所(4GB以上)にありますと、エラーが発生してロックが
できないという状態になっております。

低水準入出力関数で、代替の関数があればいいのですが、見当たらない
ようなので、ご存知の方がいればお教えいただけますでしょうか?
もしくは、コンパイルおよびリンクの際のオプションの操作で解決
可能であれば、その方法についてお教えいただけますでしょうか?
1

スキルアップ/キャリアアップ(JOB@IT)