🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[gelöst] ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
[gelöst] ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Es findet die FileNameoutofPath-Funktion nicht.
Ich habe die Bibliothek mit GlobalScope.BasicLibraries.LoadLibrary("Gimmicks") geladen. Als ich gestern ein kleines Testprogramm erstellte, um festzustellen, was ReadSourceDirectory eigentlich genau zurückliefert*, ging noch alles problemlos. Erst seit heute tritt der Fehler auf.
*Spoiler: ein zweidimensionales Feld, das rekursiv alle Unterverzeichnisenamen und Dateinamen aus dem Verzeichnis enthält dessen Name in der Variablen Source übergeben wurde und zwar voll qualifiziert in URL-Notation in der ersten Spalte und kurz in der zweiten Spalte
Ich habe die Bibliothek mit GlobalScope.BasicLibraries.LoadLibrary("Gimmicks") geladen. Als ich gestern ein kleines Testprogramm erstellte, um festzustellen, was ReadSourceDirectory eigentlich genau zurückliefert*, ging noch alles problemlos. Erst seit heute tritt der Fehler auf.
*Spoiler: ein zweidimensionales Feld, das rekursiv alle Unterverzeichnisenamen und Dateinamen aus dem Verzeichnis enthält dessen Name in der Variablen Source übergeben wurde und zwar voll qualifiziert in URL-Notation in der ersten Spalte und kurz in der zweiten Spalte
Zuletzt geändert von Basilisk am Mi 3. Jul 2024, 17:35, insgesamt 1-mal geändert.
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Hallo
Super! Jetzt wissen wir daß du schon Screenshots kannst, wäre aber nicht nötig gewesen, viel freundlicher ist da simples copy&paste des Quelltexts!
Danke!
Super! Jetzt wissen wir daß du schon Screenshots kannst, wäre aber nicht nötig gewesen, viel freundlicher ist da simples copy&paste des Quelltexts!
Danke!
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Nee… DEINEN Quelltext… oder führst du etwa direkt »ReadSourceDirectory« aus der BasicIDE aus??
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Es ist wie gesagt nur ein Testprogramm und darin tritt kein Fehler auf
Code: Alles auswählen
Sub SuspiciousFiles(Optional vObject as Variant)
Dim vasFiles As Variant
Dim sDir As String
GlobalScope.BasicLibraries.LoadLibrary("Gimmicks")
sDir = "/home/gh2425/bin"
Dim oFP as Object
oFP = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
vasFiles = ReadSourceDirectory(sDir)
MsgBox CStr(LBound(vasFiles,1))
End Sub
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Hallo
wenn ich jetzt mal wild raten darf… …?
GESTERN hast du einen Beobachter (F7) auf die variable »vasfiles« gesetzt und bist im Einzelschrittmodus durch deinen Code durchgehoppelt??
Die msgbox behauptet bei mir 0 wäre der Defaultwert, und nicht 1, ansonsten hilfts ja jetzt niemanden wenn du Code zeigst der funktioniert!NB: Ich weiß, dass 1 der Defaultwert bei LBound ist. Das steht da, um mich zu erinnern.
wenn ich jetzt mal wild raten darf… …?
GESTERN hast du einen Beobachter (F7) auf die variable »vasfiles« gesetzt und bist im Einzelschrittmodus durch deinen Code durchgehoppelt??
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Die MsgBox behauptet etwas über LBound? Ich meine das hier
Wird kein Wert angegeben, so wird standardmäßig die erste Dimension betrachtet.
Das war mein ursprünglicher Gedanke. Mein Code funktioniert, also brauche ich ihn nicht zu zeigen.
Mir bliebe auch nichts anders.
Leider nein. Gestern war mein Code auch noch komplexer, weil ich wie gesagt rausfinden wollte, wie der Rückgabewert zusammengesetzt ist.
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Ich habe jetzt an ganz anderen Dingen rumgebastelt und jetzt funktioniert es
Auch das
Auch das
Code: Alles auswählen
Sub SuspiciousFiles(Optional vObject as Variant)
Dim vasFiles As Variant
Dim sDir As String
GlobalScope.BasicLibraries.LoadLibrary("Gimmicks")
sDir = "/home/gh2425/bin"
Dim oFP as Object
oFP = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
vasFiles = ReadSourceDirectory(sDir)
Dim lLBound As Long, lUBound As Long, lCount As Long
lLBound = LBound(vasFiles, 1)
lUBound = UBound(vasFiles, 1)
For lCount = lLBound To IIf (lUBound < 3, lUBound, 3)
MsgBox vasFiles(lCount, 1)
Next lCount
End Sub
Re: ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Ich habe LibreOffice geschlossen, die Datei wieder geöffnet und jetzt tritt wieder der Fehler auf.Basilisk hat geschrieben: ↑Mi 3. Jul 2024, 17:18Ich habe jetzt an ganz anderen Dingen rumgebastelt und jetzt funktioniert es
Auch dasCode: Alles auswählen
Sub SuspiciousFiles(Optional vObject as Variant) Dim vasFiles As Variant Dim sDir As String GlobalScope.BasicLibraries.LoadLibrary("Gimmicks") sDir = "/home/gh2425/bin" Dim oFP as Object oFP = CreateUnoService("com.sun.star.ui.dialogs.FilePicker") vasFiles = ReadSourceDirectory(sDir) Dim lLBound As Long, lUBound As Long, lCount As Long lLBound = LBound(vasFiles, 1) lUBound = UBound(vasFiles, 1) For lCount = lLBound To IIf (lUBound < 3, lUBound, 3) MsgBox vasFiles(lCount, 1) Next lCount End Sub
Jetzt habe ich die Zeile
Code: Alles auswählen
GlobalScope.BasicLibraries.LoadLibrary("Tools")
Danke.
Re: [gelöst] ReadSourceDirectory aus der Bibliothek Gimmicks geht nicht
Hatte ich schon den entsprechenden Code in python gezeigt?
Code: Alles auswählen
from pathlib import Path
basedir = Path.home() / "Documents"
list( basedir.glob("**/*"))
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.