Checking to see of a folder exists

C

Chuck M

Hi,

I'm using a DIR command to verify that a folder exists on a local C: drive.
If I need to check a folder on a network drive, can I use the mapped drive
letter or must I supply a UNC path to the DIR command. I don't have the
resources to test this myself.

TIA
 
D

Dave Peterson

I've used this before, but it's untested, uncompiled here.

Dim TestStr as string
teststr = ""
on error resume next
teststr = dir("\\your\unc\path\here" & "\nul")
on error goto 0

if teststr = "" then
'not there
else
'is there
end if
 
W

ward376

You should use the path with the server name if distributing to other
users. If you're the only one using it, and you don't change your
drive letters, using the drive letter in the path is fine.

Cliff Edwards
 
S

Stefi

Hi Dave,

I was looking for a solution for checking the existence of a server and
found this post of yours and hoped it helps me, but it doesn't. It returns a
wrong False value if path to be checked consists of only the server name.

My aim is to separate cases of non-existence of a folder:

1. The folder doesn't exist on an existing server.
2. The folder doesn't exist because the server itself doesn't exist (e.g.
its name is mis-spelled).

Any idea?

Regards,
Stefi



„Dave Peterson†ezt írta:
 
B

Bob Phillips

Private Declare Function PathIsUNCServer Lib "shlwapi" _
Alias "PathIsUNCServerA" _
(ByVal pszPath As String) As Long


Public Function IsUNCPathAServer(ByVal sPath As String) As Boolean

IsUNCPathAServer = PathIsUNCServer(sPath) = 1
End Function


--
---
HTH

Bob


(there's no email, no snail mail, but somewhere should be gmail in my addy)



Stefi said:
Hi Dave,

I was looking for a solution for checking the existence of a server and
found this post of yours and hoped it helps me, but it doesn't. It returns
a
wrong False value if path to be checked consists of only the server name.

My aim is to separate cases of non-existence of a folder:

1. The folder doesn't exist on an existing server.
2. The folder doesn't exist because the server itself doesn't exist (e.g.
its name is mis-spelled).

Any idea?

Regards,
Stefi



"Dave Peterson" ezt írta:
 
S

Stefi

Thank you Bob for your reply! It partly helped because it returns True for
any sPath meeting formal criteria (starting with \\) and False for
non-meeting ones but doesn't reflect that server sPath is a really existing
server or not.

Any further idea?

Regards,
Stefi


„Bob Phillips†ezt írta:
 
B

Bob Phillips

Just pass it the server, no other path, and see

--
---
HTH

Bob


(there's no email, no snail mail, but somewhere should be gmail in my addy)



Stefi said:
Thank you Bob for your reply! It partly helped because it returns True for
any sPath meeting formal criteria (starting with \\) and False for
non-meeting ones but doesn't reflect that server sPath is a really
existing
server or not.

Any further idea?

Regards,
Stefi


"Bob Phillips" ezt írta:
 
S

Stefi

I tried it again with this test macro:

Sub test6()
Dim uncserver As Boolean
Dim teststr As String
' teststr = "\\s00dt002"
teststr = "\s00dt002"
' teststr = "\\xxxxxxxx"

uncserver = False
uncserver = IsUNCPathAServer(teststr)
If uncserver Then
MsgBox teststr & " is there!"
Else
MsgBox teststr & " not there!"
End If
End Sub

"\\s00dt002" is an existing server, "\s00dt002" and "\\xxxxxxxx" are of
course not.

I get " is there!" message for "\\s00dt002" and "\\xxxxxxxx", " not there!"
for "\s00dt002".

What I'd like to achieve is getting
" is there!" message for "\\s00dt002
" not there!" for "\s00dt002" and "\\xxxxxxxx".

What do I do wrong?

Thanks,
Stefi



„Bob Phillips†ezt írta:
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top