ファイルのオープンに排他処理をかけるには?


たき  2002-10-29 21:24:04  No: 105309  IP: [192.*.*.*]

DLLの処理の中で、ログファイルにログを出力している部分があるのですが、
そのDLLが複数同時に呼ばれてもいいように、
ログの出力に排他処理をかけるように頼まれたのですが、
どうやればいいのかわかりません。調べてみたのですが、
DBアクセスの排他しか見つからなくて。
どなたかご教授願えませんでしょうか。
ちなみに、
ログの出力の一連の動作としては、
ログファイルをオープン(Appendモード)して、
Printステートメントで書き込み、
クローズする、
ということをその都度しています。

編集 削除
あき☆彡  2002-10-29 21:50:45  No: 105310  IP: [192.*.*.*]

Open ステートメントで Lock Write を指定すれば良いと思います。

編集 削除
たき  2002-10-29 21:59:04  No: 105311  IP: [192.*.*.*]

誰かがファイルを Lock Write で Openしている最中に、
他の人が Open ステートメントを実行しようとした場合は、
どうなるのでしょうか?(もちろん開きたいファイルは同じです)
後から開こうとした人は待たされるのでしょうか。
それとも、エラーになってしまうのでしょうか?

編集 削除
あき☆彡  2002-10-29 22:22:24  No: 105312  IP: [192.*.*.*]

実行すれば分かる事だと思いますが・・・
   
エラーになるので、
後の人も書き込む必要があるのなら、
Open出来るまでリトライすれば良いと思います。

編集 削除
たき  2002-10-29 22:26:58  No: 105313  IP: [192.*.*.*]

すみません、他にやることがあって、時間が取れなかったので。
先ほど自分でやってみたところ、エラーになりました。
少し時間が取れたので、もう少しいろいろ試してみます。
Lock ステートメントを見つけたので、これも試してみようと思います。
やれば分かることまで質問してしまい申し訳ありませんでした。

編集 削除