ich habe ein Problem mit der Methode getFiles des FilePicker.
Ich benutze den FilePicker um eine TXT-Datei anzuwählen, in welche ein Suchstring geschrieben werden soll.
Wenn ich im FilePicker-Dialog und statt auf speichern, auf abbrechen klicke kommt eine Fehlermeldung das OpenFileReadWrite einen falschen Wert bekommt.
Ich habe versucht den Rückgabewert von getFiles mit dem Xray-Tool auszulesen, allerdings produziert selbst er eine Fehlermeldung.
Wie gesagt, der Fehler tritt nur auf wenn der Dialog abgebrochen wird, wenn ich auf speichern klicke funktioniert alles einwandfrei.
Hat jemand eine Idee, wie ich diesen Fall vielleicht abfangen kann oder eine Lösung des Problems?
Hier der Code:
Code: Alles auswählen
sub SpeichereSuche()
Dim FileSaver As Object
Dim FilePath() As String
DIM oUcB, oDat, oOS as Object
Dim url, s as String
frmMain = ThisComponent.Drawpage.Forms.getByName("frmMain")
oUcB = createUnoService("com.sun.star.ucb.SimpleFileAccess")
oOS = createUnoService("com.sun.star.io.TextOutputStream")
FileSaver=createUnoService("com.sun.star.ui.dialogs.FilePicker")
FileSaver.initialize(array(2))
FileSaver.appendFilter("TextFilter", "*.txt")
FileSaver.setCurrentFilter("TextFilter")
FileSaver.setDefaultName("Suche")
FileSaver.execute
FilePath()=FileSaver.GetFiles
oDat = oUcB.OpenFileReadWrite(ConvertToURL(FilePath(0)))
oOS.setOutputStream(oDat.getOutputStream)
s = frmMain.filter
oOs.writeString(s)
oOs.closeOutput()
end sub
Gruß Matthias