QIcon relativer Pfad funktioniert auf dem Entwicklerrechner

Alles rund um die Programmierung mit Qt
Antworten
miguel_m
Beiträge: 15
Registriert: 13. Januar 2012 14:37

QIcon relativer Pfad funktioniert auf dem Entwicklerrechner

Beitrag von miguel_m »

Guten morgen,

ich bin gerade ziemlich verwirrt was folgendes Problem angeht. Wenn ich meine Software starte auf dem Rechner auf dem ich entwickle, funktioniert die relative Zuweisung auf das Bild für QIcon ohne Probleme. Ich kann das Startverzeichniss auf dem Rechner hin und her packen, es funktioniert wunderbar, sobald ich den Ordner in dem die Bilddatei liegt umbenenne funktioniert es nicht mehr, demnach greift er auch tatsächlich auf den Ordner in dem Startverzeichniss zu. Nur wenn ich den Ordner jetzt auf nen anderen Rechner packe, zeigt er die Bilder nicht mehr an, was bedeutet das er die Dateien wohl nicht findet, oder aus irgendeinem Grund nicht anzeigen kann. Denn eine Ini datei die das Programm beim Start aussliest, öffnet er Problemlos auf jedem Rechner.

Hat vielleicht jemand ne Idee woaran das liegen könnte?

Ich hab mal noch keinen Code gepostet, da ich nicht denke das es daran liegt und das Projekt recht umfangreich ist.

Vielen Dank schonmal für die Hilfe
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: QIcon relativer Pfad funktioniert auf dem Entwicklerrech

Beitrag von franzf »

Mein erster Verdacht:
http://developer.qt.nokia.com/doc/qt-4. ... qt-plugins
Du musst die passenden Imageplugins mitliefern.

Und bei Pfaden relativ zur Exe solltest du aufpassen: Die Umgebung setzt evtl. einen anderen Pfad als currentDir, als du dir denkst. Deshalb immer von QCoreApplication::applicationDirPath() aus die Dateien ansprechen.
miguel_m
Beiträge: 15
Registriert: 13. Januar 2012 14:37

Re: QIcon relativer Pfad funktioniert auf dem Entwicklerrech

Beitrag von miguel_m »

vielen Dank, bin jetzt auch auf die Lösung gekommen. Schade das es in diesem Fall keine Fehlermeldung gibt, wie bei den anderen Bibliotheken, wenn sie fehlen.
danke auch für den tipp mit QCoreApplication::applicationDirPath, werd ich mir zu Herzen nehmen.
Antworten