Check, ob Folder Schreibrechte hat oder nicht

19/11/2009 - 11:41 von Andreas Szabo | Report spam
Hallo

Ich habe folgendes Problem:

Der User kann via PopUp Fenster einen Folder auswàhlen, wohin er einen
erstellten Report exportieren kann. Ich muss nun checken, ob das ausgewàhlte
Verzeichnis schreibrecht hat oder nur ReadOnly ist.
Bei schreibrecht exportieren, bei ReadOnly Fehlermeldung ausgeben und
abbrechen.

Habe folgenden Code, der leider nicht richtig ausgibt, ob ReadOnly oder
nicht. Weiss jemand eine Lösung?
Besten Dank im voraus.

Dim objShell
Dim ssfWINDOWS
Dim objFolder
Dim SearchChar
Dim SearchString
Dim CharPos

ssfWINDOWS = &H11
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(0, "Bitte einen Pfad eingeben", 0,
ssfWINDOWS)

SearchChar = "\"
SearchString = objFolder.Self.Path
CharPos = InStr(1, SearchString, SearchChar)

If (Not objFolder Is Nothing) And CharPos <> 0 Then
Text1.Text = objFolder.Self.Path
Else
MsgBox ("Bitte einen gültigen Pfad eingeben.")
End If

Set objFolder = Nothing
Set objShell = Nothing

Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(Text1.Text)
If f.Attributes And 1 Then
MsgBox ("Nur Schreibrecht auf dieses File")
End If


Gruss
Andy
 

Lesen sie die antworten

#1 Ingo Moch
19/11/2009 - 13:51 | Warnen spam
Hallo Andreas,

"Andreas Szabo" schrieb:

Der User kann via PopUp Fenster einen Folder auswàhlen, wohin
er einen erstellten Report exportieren kann. Ich muss nun
checken, ob das ausgewàhlte Verzeichnis schreibrecht hat oder
nur ReadOnly ist. [...]



Was passiert denn, wenn Exportprozedur in ein
schreibgeschuetztes Verzeichnis einen Schreibversuch vornimmt?

Da sollte ja normalerweise eine wie auch immer geartete
Fehlermeldung zurueckgemeldet werden, so dass sich ein
"vorabtesten" durchfuerhen eruebrigen wuerde, zumal es ja nur
eine der moeglich Fehlerquellen bei Dateioperationen darstellt.

MfG
Ingo

Ähnliche fragen