Domino 9 und frühere Versionen > ND7: Entwicklung
Dateien löschen
Demian:
Hallo alle zusammen,
Ich habe mir einen Agenten geschrieben, der aus einer Exceltabelle ein bestimmtes Blatt in eine neue Tabelle kopiert, in einem selbst angelegten "Temp-Ordner"speichert, und dann als Anhang in einer Mail versendet.
Jetzt möchte ich nach dem Versenden alle Dateien in dem Temp Ordner löschen. In Excel ging das mit: kill "C:\Musterordner\" & "*.*"
In Notes sacht er mir dann aber Path/File access Error
Woran liegt das? Bzw. noch viel wichtiger: Wie kann ich die Dateien löschen?
Gruß
Demian
koehlerbv:
Ich befürchte, das ist kein Notes-Problem, sondern eines von Windows bzw. anderen Programmen: Eines oder mehrere von denen hat wohl im Temp-Ordner noch ein File im Zugriff. Gerade das "*.*" funktioniert ja in der Regel auch nicht aus dem Windows-Explorer.
Bernhard
Glombi:
Erzeugst Du die Datei in Notes mt Script?
Falls ja, musst Du die vor dem killen mit Close ... schließen.
Andreas
Demian:
Hallo ihr beiden,
Hier mal ein Ausschnitt des Codes wie er in Excel war:
....
ActiveWorkbook.Close
mail.display
mail.send
ChDir pfad
Kill "*.*"
....
Hat bisher immer funktioniert. Also kann es ja eigentlich kein "Windows-Problem" sein, oder? Zumal, wenn ich die Datei explicit im Kill angebe klappts (siehe unten).
Die Datei wird per Script erzeugt, und auch vor dem Kill wieder geschlossen:
Function ListeÖffnen
On Error Goto Fehler
Monatsabfrage
Set ex = getobject(,"Excel.Application")
Weiter:
ex.visible = False
ex.workbooks.open "H:\Personal\Personalabteilung\Geburtstage.xls"
ex.sheets(Monat).select
ex.ActiveSheet.Copy 'Kopieren der aktuellen Tabelle in eine neue Arbeitsmappe
ex.workbooks("Geburtstage.xls").close
ex.activeworkbook.saveas "H:\Personal\Personalabteilung\temp\" & ex.ActiveSheet.Range("a1").Value 'Speichern der neuen Mappe
ex.activeworkbook.close
ex.visible = True
Set ex = Nothing
Exit Function
Fehler:
If Err() = 208 Then
Set ex = createobject("Excel.Application")
Goto weiter
Else
Msgbox Err() & " " & Str(Err) & ": " & Error$
End If
End Function
Gelöscht wird hier:
Set obj = item.EmbedObject(EMBED_ATTACHMENT,"","H:\Personal\Personalabteilung\temp\Geburtstagsliste " & Monat & ".xls")
Kill "H:\Personal\Personalabteilung\temp\Geburtstagsliste " & Monat & ".xls"
Bin jetzt vorerst so vorgegangen, dass ich nur die erstellte Datei wieder lösche. Das klappt auch. Aber um auf Nummer sicher zu gehen, würde ich gerne alle Dateien löschen.
Den Umweg über mkdir und rmdir würde ich hier sehr ungern gehen :)
Gruß
Demian
DerAndre:
Ich Verweise Dich nochmal auf Bernhard...
Schonmal versucht manuell Deinen Temp-Ordner zu löschen?
Das klappt meistens auch nicht, weil, wie Bernhard schon sagte, diverse Programme Ihre Finger da drauf haben.
André
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln