Dir関数でフォルダの中を表示するには?

解決


清明  2002-12-21 16:24:26  No: 76725  IP: [192.*.*.*]

何度もすみません。
お気に入りのフォルダの中を一括表示したいのですが、お気に入り(c:\WINDOWS\favorites)内のファイル名は所得できても、フォルダ名を所得できません。

Private Sub Command1_Click()
    Dim strTargetDir As String
    Dim strDirItem As String
    strTargetDir = "C:\WINDOWS\Favorites\"
    strDirItem = Dir(strTargetDir)
    Do While strDirItem <> ""
        Print strDirItem
        strDirItem = Dir
    Loop
End Sub

こんな感じでコーディングしてみたのですけれど・・・。
よろしくお願いします。

編集 削除
たかみちえ  URL  2002-12-21 17:32:04  No: 76726  IP: [192.*.*.*]

Dir関数では、たしかフォルダは検索できないと思います。
(記憶あいまいですけど)
APIのFindFirstFileなどのAPIを使います。

編集 削除
魔界の仮面弁士  2002-12-21 19:09:43  No: 76727  IP: [192.*.*.*]

Dir関数の第2引数を指定しましょう。

編集 削除
Say  2002-12-21 22:32:43  No: 76728  IP: [192.*.*.*]

Microsoft Scripting Runtimeの
FileSystemObjectオブジェクトのFolderオブジェクトの
SubFoldersコレクションをFor Eachでまわす、
という手もあります。

    Dim fso As New Scripting.FileSystemObject
    Dim objFolder As Scripting.Folder
    Dim objSubFolder As Scripting.Folder
    Set objFolder = fso.GetFolder("C:\WINDOWS\Favorites\")
    List1.Clear
    For Each objSubFolder In objFolder.SubFolders
        List1.AddItem objSubFolder.Name
    Next

編集 削除
魔界の仮面弁士  2002-12-21 23:35:25  No: 76729  IP: [192.*.*.*]

なお、お気に入りのフォルダのパスは、
  MsgBox CreateObject("WScript.Shell").SpecialFolders("Favorites")
で取得する事ができます。

編集 削除
清明  2002-12-23 15:22:28  No: 76730  IP: [192.*.*.*]

すみません、ありがとうございました!
なかなか関数のいい本が見つからなくて困ってるのですが、本腰入れて探してきます。
CGIを作る程度のPerlのリファレンス本みたいに安いのがあればいいのだけど、
VBのりふぁれんす凡は高すぎ。。。

編集 削除
ゆの吉  2003-01-22 15:48:54  No: 76731  IP: [192.*.*.*]

すみません知っておられんましたら教えて下さいm(_ _)m
通常ネットワーク越しのフォルダ参照は、Dir(\\abcsrv01\qwe...\)で解決できるのですが、\\abcsrv01という名前ではなく直接IPアドレスを入力して参照する方法はあるのでしょうか?

編集 削除
Say  2003-01-22 16:01:41  No: 76732  IP: [192.*.*.*]

それは、例えば
Dir(\\192.168.1.1\qwe...\)
で参照できなかったということでしょうか?

編集 削除