Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: bikerboy am 24.02.10 - 10:57:32

Titel: Filehandling mit LS
Beitrag von: bikerboy am 24.02.10 - 10:57:32
So, stehe nunvor einer anderen Herausforderung.

Ich möchte Datei von einem Ordner in den anderen schieben. Bekomme aber immer die Fehlermeldung "Permission denied"  als ob ich keine Rechte hätte. Das ganze ist auf Windows. Und ich bin Administrator auf der Kiste und der Befehle wird im UI  mit meinen Rechten ausgeführt, also was kann da schief laufen ???

Ach ja die betroffenen Files sind auch nicht geöffnet oder so!
Titel: Re: Filehandling mit LS
Beitrag von: ascabg am 24.02.10 - 11:12:15
Hallo,

Wie, der Code, willst Du die Datei verschieben?


Andreas
Titel: Re: Filehandling mit LS
Beitrag von: bikerboy am 24.02.10 - 16:14:31
Ja ich würde gerne eine Datei im Dateisystem von Windows verschieben.

Laut Hilfe reicht:

Code
Name strFileSource as strFileTarget

Leider bekomme ich halt unregelmässig die Meldung, dass ich keine Rechte auf die Datei hätte.

Titel: Re: Filehandling mit LS
Beitrag von: m3 am 24.02.10 - 16:32:40
Code
Name strFileSource as strFileTarget
Das ist jetzt aber ein Scherz, oder?

Wir wollen/müssen DEINEN CODE sehen, mit dem Du das machen willst. Wie wird der aufgerufen, läuft er am Server oder am Client und vor allem: wie schaut der tatsächliche Sourcecode aus?
Titel: Re: Filehandling mit LS
Beitrag von: bikerboy am 25.02.10 - 08:44:08
@M3

Wieso sollte das jetzt ein Scherz sein? Das ist der Code mit dem ich die Datei umbennen /verschieben will.

Code
.....

	
	' Bereits vorhandene PDF löschen, weil sonst das Umbenennen nicht klappt!
	If Dir(pdffile) <> "" Then
		Kill pdffile
	End If
	
	' Raussuchen der PDF 
	Dim strFile As String
	
	On Error GoTo NotReadyToAttach
	
NextTrial:
				
	strFile = Dir$(PDFPATH)
	
	If strFile = "" Then GoTo NotReadyToAttach
	
	zwschn = CStr(PDFPATH) + strFile
 	pdffile = pdffile
 	
 	On Error GoTo errFileHandling	
	' Erzeugte PDF umbenennen
	Name CStr(zwschn) As CStr(pdffile)
	'FileCopy zwschn , pdffile
	'Kill zwischn
	
....

Der Code läuft immer im Client. Die allgemeine Vorgehensweise ist folgende.

User drückt auf Button "Erzeuge PDF" , dann folgt der Druckdialog, in der der User einen PDFPrinter auswählt. Der PDF-Drucker ist so eingestellt, dass er die PDF in einem speziellen Verzeichnis anlegt. Dieses Verzeichnis hat zur Laufzeit immer nur das eine Dokument in sich. (Leider können wir den Namen des PDF nicht immer vorraus sagen, da es verschiedene Drucker gibt). Das gefundene Dokument soll in ein anderes Verzeichnis gepackt und umbenannt werden. Und genau hier knallt es immer wieder. Habe ein Errorhandling, dass beim Fehler im Dateisystem es immer wieder für 15 sekunden versucht. Es könnte ja sein, dass der Drucker noch nicht fertig ist.
Titel: Re: Filehandling mit LS
Beitrag von: m3 am 25.02.10 - 15:28:36
Sorry, mein Fehler. Die Funktion "Name" hatte ich nicht im Kopf.

Kann es sein, dass das "Permission Denied" daher rührt, dass der PDF Creator noch immer auf dem File "drauf sitzt"?
Titel: Re: Filehandling mit LS
Beitrag von: bikerboy am 25.02.10 - 16:40:17
@M3

naja ich warte ne geschlagene Minute auf das ding das sollte doch reichen, oder ?
Titel: Re: Filehandling mit LS
Beitrag von: pram am 25.02.10 - 16:51:55
hol dir von Sysinternals den ProcessExplorer, da gibts ne Funktion in der du nach Dateihandles suchen kannst, dann siehst du welcher Prozess die Datei noch fest hält (vielleicht bist du es auch selber, weil du z.B. ein stream.close vergessen hast)

Gruß
Roland
Titel: Re: Filehandling mit LS
Beitrag von: Pyewacket am 25.02.10 - 22:21:41
Existiert der Zielpfad schon? Ansonsten geht das nicht.
Titel: Re: Filehandling mit LS
Beitrag von: bikerboy am 26.02.10 - 09:28:53
Also der Zielordner besteht, wird vorher auch abgeprüft und falls es nicht besteht wird er mit mkdir angelegt.

Ich habe ansonsten auch keinen Stream auf die Datei.
Titel: Re: Filehandling mit LS
Beitrag von: Werner Götz am 26.02.10 - 09:51:36
Kannst Du uns mal Details nennen, wie die Variablen zur Laufzeit aussehen, also pdffile
PDFPATH
strFile
zwschn

-Werner
Titel: Re: Filehandling mit LS
Beitrag von: pram am 26.02.10 - 10:45:08
Hallo Robert
Zitat
...Bekomme aber immer die Fehlermeldung "Permission denied"
wenn du die Meldung immer bekommst, dann hast du m.E. keine Berechtigung (Verzeichnis existiert nicht/Datei bereits vorhande oder was weiß ich)

Zitat
... Leider bekomme ich halt unregelmässig die Meldung, dass ich keine Rechte auf die Datei hätte
Also wenn die Meldung (mit gleichen Parametern für "name") unregelmäßig kommt, dann "riecht" das danach, dass dir irgendwer die Datei festhält, üblichen Verdächtigen wären:
- geöffnet im Acrobat (auch wenn dieser geschlossen/nicht sichtbar ist kann der Prozess ja noch weiter laufen)
- Autovorschau im Windows-Explorer
- Virenscanner?

Klappt es denn wenn du es mehrfach versuchst?

Gruß
Roland