AW: Bin weitergekommen, trotzdem problem
23.01.2004 15:39:27
Dan
Hallo,
es ist aber merkwurdig. Hier ein Code wo ich die Fehler anders behandeln versucht habe. Versuch es und schreib mir ob es lauft oder wo liegt das Problem. Es fallt mir nur noch ein die Scripting Library zu ersetsen (erneuern)? D.
Sub Test3()
Dim oFso As Object
Dim oFld As Object
Dim sPath As String
Err.Clear
On Local Error Resume Next
Set oFso = VBA.CreateObject("Scripting.FileSystemObject")
If (oFso Is Nothing) Then MsgBox "FileSystemObject is Nothing.", vbCritical, "Error": End
sPath = "C:\Temp\ProtectedToDelete"
Set oFld = oFso.GetFolder(FolderPath:=sPath)
If (oFld Is Nothing) Then MsgBox "Folder is Nothing.", vbCritical, "Error": End
oFld.Delete
' End of Code
' Fehler die noch auftauchen koenneten :
If (Err.Number <> 0) Then
Dim vntErrNr As Variant
Dim vntErrDesc As Variant
' Fehler merken
vntErrNr = Err.Number
vntErrDesc = Err.Description
Err.Clear
' Permission denied, Folder ist nur "zum lesen"
' oder ist gerade benutzt
If (vntErrNr = 70) Then
' wir versuchen es mit DeleteFolder Methode
oFso.DeleteFolder FolderSpec:=sPath, Force:=True
' if wieder Error : es hat keinen Sinn es weiter zu versuchen, man muss den Folder frei machen
' z.B. einen File schliessen, der sich in deisem Folder befindet und geoffnet ist usw.
If (Err.Number <> 0 And Err.Number = vntErrNr) Then
MsgBox "Es ist wieder der Fehler " & vntErrNr & " aufgetaucht." & vbCrLf & _
vntErrDesc, vbCritical, "Fatal Error": End
ElseIf (Err.Number <> 0) Then
MsgBox "Runtime. Error Nr. " & vntErrNr & " occured " & vbCrLf & _
vntErrDesc, vbCritical, "Fatal Error": End
End If
Else
MsgBox "Runtime. Error Nr. " & vntErrNr & " occured " & vbCrLf & _
vntErrDesc, vbCritical, "Fatal Error": End
End If
End If
End Sub