
ファイルサーバの空き容量を取得しようとしています。
ファイルパスを
\\pcname\folder$
で取れるサーバがあるのですが、権限の関係上
\\pcname\folder$\subfolder
でなければ取れない場所があります。
前者はFileSystemObjectで取れるのですが、後者はエラーとなります。
後者はコンパイルエラーではなく、ファイルパスが存在しないとのエラーなので、
「$」は演算子でもないでしょうし、何がおかしいのか、どう対処すればいいのかがわかりません。
どうやら「$」の後にファイル・フォルダ名があると取れない事まではわかったのですが・・・
何かヒントになることはありませんでしょうか?
コマンドプロンプトでdir \\pcname\folder$\subfolderでは空き容量がちゃんと取得できていますので、権限の問題ではなさそうです。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
よくわかりませんが、手元の環境 (Win2000 pro、ネットワーク上には共有フォルダを設定した Win2000 pro のみ) で、下記のスクリプトは正常に動作しました。
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FolderExists("\\pcname\test$\test01$")) Then
WScript.Echo "存在します"
Else
WScript.Echo "存在しません"
End If
もちろん、\\pcname\test$ でも正常です。
フォルダの存在確認だけでしたら、これでもいいのではないかと思いますが...。
空き容量ということは、ドライブのって事になるかと思います。
現在の手元の環境では、ファイルサーバーではなく PC 上の共有フォルダでしか確認していないので正確ではないですが...
こんな感じではできないでしょうか?
Set fso = CreateObject("Scripting.FileSystemObject")
Set src = fso.GetDrive("C:")
WScript.Echo src.FreeSpace
目的の共有フォルダをネットワークドライブとしてマウントしておけばできると思いますが...詳しくは調べていませんm(_ _)m
ちなみにですが、コマンドプロンプトで DIR コマンドを使っての「空き領域」は、おそらくそのフォルダが所属している "ドライブ" の空き容量ではないかと思います。
確認に使っているのが DIR コマンドだったら、どのフォルダ上で実行しても同じ「空き領域」が表示されているのではないでしょうか。
あとは...
VBScript Tips (Tips0075) [ドライブ情報を取得する]
http://www.whitire.com/vbs/tips0075.html
Tips - (小技にも満たない)微ワザ集
http://www1.u-netsurf.ne.jp/~tomo_c/tips/WSH003. …
などは参考になりませんでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するQ&A
関連するカテゴリからQ&Aを探す
おすすめ情報
人気Q&Aランキング
-
4
COBOLでBLOCK CONTAINS句につい...
-
5
NET USE をVBSで
-
6
ファイルやフォルダのごみ箱へ...
-
7
sql文
-
8
runas実行した時にきかれるパス...
-
9
バッチ終了時にDOS窓を閉じるコ...
-
10
シェルスクリプトを実行したい
-
11
binファイルを解凍したいの...
-
12
バッチファイルでサーバーのフ...
-
13
バッチファイルでキー操作を行う。
-
14
バッチファイル 二つ上のディ...
-
15
コマンドプロンプトの「%1」と...
-
16
エクセルVBAで開いているファイ...
-
17
ショートカットをデスクトップ...
-
18
EXCELマクロで上書きメッ...
-
19
拡張子をつくる
-
20
繰り返し1行~28行までを順順に...