PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : externe Datei suchen mit KDE/QT



celindir
11-07-2003, 09:05
Hallo zusammen,

gibt es eine einfache Möglichkeit festzustellen, ob eine bestimmte Datei auf dem Rechner des Users vorhanden ist und den Pfad dazvon zu bekommen?


KGlobal::dirs()->findExe(name, path, true);

findet ja nur Executables:(

und

QString locate ( const char *type, const QString& filename, const KInstance* instance = KGlobal::instance() )

sucht doch nur im KDE Verzeichnis??

Ich brauche aber den Speicherort einer Datei (type-ghostscript.mgk von Imagemagick), um deren Inhalt zu verarbeiten und kann nicht vorher wissen, wo die gespeichert ist.

Geht das auch, wenn der Speicherort nicht im PATH enthalten ist?

Sachdienliche Hinweise sind herzlich Willkommen.

anda_skoa
11-07-2003, 09:27
Wenn du keinen Anhaltpunkt hast, wird schwierig.

Rekursives Durchsuchen geht natürlich immer, eine andere Möglichkeit wäre eventuell, locate in einem KProcess aufzurufen.

Vielleicht kann die ImageMagick auch sagen, welche Pfade in Frage kommen, eventuell zur Kompilezeit.

Wenn die Datei ansich eine fixe Position hat, könnte man sie beim ./configure suchen, bzw dem Benutzer überlassen, das entsprechende Dir als Parameter für configure anzugeben.

Was enthält denn die Datei und für was benutzt du sie?

Ciao,
_

celindir
11-07-2003, 09:45
Original geschrieben von anda_skoa
Wenn du keinen Anhaltpunkt hast, wird schwierig.

Rekursives Durchsuchen geht natürlich immer, eine andere Möglichkeit wäre eventuell, locate in einem KProcess aufzurufen.

Vielleicht kann die ImageMagick auch sagen, welche Pfade in Frage kommen, eventuell zur Kompilezeit.

Wenn die Datei ansich eine fixe Position hat, könnte man sie beim ./configure suchen, bzw dem Benutzer überlassen, das entsprechende Dir als Parameter für configure anzugeben.

Was enthält denn die Datei und für was benutzt du sie?

Ciao,
_

Danke für die Info

Die Datei ist eine XML Datei und enthält die Schrifttypen, die Imagemagick benutzen kann, um Texte in Bilder zu schreiben. Ich will sie über QDomDocument auslesen und die möglichen Schrifttypen in einer ComboBox listen.

Klappt so weit auch prima, wenn ich den Pfad fest vorgebe.

Vielleicht hilft aber etwas anderes:

convert -list type
liefert in der ersten Zeile der Ausgabe
"Filename: /usr/lib/ImageMagick/type-ghostscript.mgk"

Ich müsste dann nur convert-list type in einem KProcess aufrufen und die Rückgabe direkt abfangen und den String dann rausfiltern.

Ist zwar etwas umständlicher aber wenns nicht anders geht :)

Trotzdem vielen Dank

Gruß

tuxipuxi
11-07-2003, 10:26
hi,

locate waere problematisch weil du nicht vorraussetzen kannst das
a) jeder locate hat
b) jeder(so wie ich ;)) regelmaessig updatedb ausfuehrt.

gruss,

tuxipuxi.