- PR -

VB .NETでネットワーク越しのドライブにアクセスできない

1
投稿者投稿内容
mocky
会議室デビュー日: 2007/07/23
投稿数: 2
投稿日時: 2007-07-23 10:18
下記の環境でのアプリを製作中です。

・PC1 DBサーバー(OS:WinSV2003/DB:SQL2005/DVDドライブ)
・PC2 WEBサーバー(OS:Win2k sp4/Dev:VisualStudio .NET pro 2003/IE6 sp1)
・PC3 クライアント(OS:WinXP/IE6 sp2)

PC3からIEでPC2にアクセスし、WEBアプリを実行してWEBアプリからPC1のDBを参照しています。
DBには画像データが格納されていて、それを検索・参照するのですが、DBのサイズ縮小のために古い画像データはDVDに追い出されています。
DVDに追い出されたデータを参照する場合、画像はDBにはないのでDVDを参照するのですが、PC1のDVDドライブをWEBアプリから参照できません。
共有設定されたPC1のGドライブ(DVD)に対してドライブが存在しているかのチェックをするところでFalseになってしまいます。

具体的には、

Dim fs As Scripting.FileSystemObject
Dim StrDrivePath As String
Dim ret1 As Boolean

fs = New Scripting.FileSystemObject()
StrDrivePath = "\\PC1\G"
ret1 = fs.DriveExists(StrDrivePath)

この fs.DriveExists(StrDrivePath) でFalseが返ってきます。

"\\PC1\G"は確実に共有設定されていて、エクスプローラーからは参照ができますし、ユーザー名、パスワードもPC1とPC2、PC3で同一ですので認証せずにお互いのPCを参照することが可能です。

なお、これを Dir("\\PC1\G\*.*") としても 結果にはなにも返ってきません。
ドライブ上にはファイルが存在しているので、何かしらのファイル名は返ってくるはずなのですが・・・。
試しにDVDドライブではなく、HDDを共有して、そのドライブに対して同じ事を行ってもダメでした。

ネットワーク上のドライブに対して DriveExists で確認はできないものでしょうか?
他の手段でも良いので、ドライブが存在するかを確認する方法はないでしょうか。
よろしくお願いします。

[ メッセージ編集済み 編集者: mocky 編集日時 2007-07-23 10:20 ]

[ メッセージ編集済み 編集者: mocky 編集日時 2007-07-23 10:25 ]
mocky
会議室デビュー日: 2007/07/23
投稿数: 2
投稿日時: 2007-07-23 11:29
ひとまず解決しました。

最初に訂正ですが、DVDドライブはクライアントPC(WinXP)上のPCに存在するものを共有していました。
すみませんでした。

クライアントPCでは簡易共有をOFFにしていたのですが、これをONにして再度DVDドライブを共有しなおしてみるとうまくいきました。
詳細は理解してませんが、ひとまずうまくいったということで・・・。
1

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