• ベストアンサー

vbsで同一ファイルに出力するには

お世話になります。 vbsでログ出力プログラムを作成しています。 このプログラムは同時に複数のプログラムから呼び出されます。 同時書込みの試験をしていた所、2番目に実行したログ出力プログラムでログ出力に 失敗してしまいました。 ###試験方法### ファイルのオープンとクローズの間にmsgboxを実行し、オープン中を維持した状態で、 ログ出力プログラムを実行し、追記処理を行いました。 ###質問内容### 同時書込みは可能でしょうか。 可能な場合、その方法をご教授頂けますでしょうか。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

同時オープンは無理です。ログの発生都度、 1)アペンドモードでオープン 2)ライト 3)クローズ を行う必要があります。 他プログラムでオープン中はオープンが失敗すると思うので、ちょっとSleepしてリトライする必要がありますね。

ken__t
質問者

お礼

notnot様 ご回答有難うございました。 排他ロックの解決策を模索しておりましたが無理であることがわかりました。 sleepを用いるという方法は気が付きませんでした。 案として持ち帰って、提案したいと思います。 有難うございました。

その他の回答 (1)

  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.1

>同時書込みは可能でしょうか。 無理です。 通常、ファイルを書き込みモードで開く時は排他ロックがかかります。

ken__t
質問者

お礼

Bonjin様 ご回答有難うございました。 排他ロックの解決策を模索しておりましたが無理であることがわかりました。 結果を持ち帰って仕様自体の見直しをする事といたします。 有難うございました。

関連するQ&A