• 締切済み

VB6で特定のファイルを閉じたい

VB6ですでに存在しているcsvファイルに書き込みをするプログラムを作っているのですが、 書き込みしたいcsvファイルが開いているとエラーになって書き込みができません。 なので、「書き込みしたいファイルが開いているか判定」して、 「開いている場合は閉じたい」のですが、どうすれば良いでしょうか? 開いているファイルはVB6で開いたのではなくて、ユーザーが開いたファイルになります。

みんなの回答

回答No.2

おっと失礼。 閉じるのでしたね。 すみません。VB6 は持ち合わせていないので VBAですが、ファイルを誰が使用中か調べるために以前巡り合ったところが残ってました。 http://blogs.technet.com/b/heyscriptingguy/archive/2005/02/16/how-can-i-list-open-sessions-and-open-files-on-a-computer.aspx VBSなのでVB6にも移植は簡単かと思います。 ただ、強制的に閉じるのはトラブルの元なので リンク先のように使用者を調べて、鈴木さーん閉じてぇ!と叫んだ方が・・・。 (共有フォルダ上のファイルの場合ですよね?  Windows系のファイルサーバーなら有効でしょうけど、  Linux の Samba とかだと未検証です)

回答No.1

こちらで 指定のファイルが使用中かどうかを調べる (015) http://hanatyan.sakura.ne.jp/vbhlp/excel03.htm なお、リンク先にもありますが メモ帳で開いている場合にはどうしようもありません。 メモ帳で開いているときには、 そのファイルをエクスプローラなどで削除も出来ちゃいます。

関連するQ&A