Holen Sie sich $HOME und/oder den Benutzernamen ohne Verwendung von C++

Holen Sie sich $HOME und/oder den Benutzernamen ohne Verwendung von C++

Ich arbeite an der Musik-App und muss wissen, wie ich den Benutzernamen und/oder das Home-Verzeichnis der Benutzer bekomme. Ich habe eine Weile herumgegoogelt, kann aber nur die Variablen für C++ oder BASH finden.

Wie erhalte ich den Benutzernamen oder sein/ihr Home-Verzeichnis?

Antwort1

Ich glaube nicht, dass es eine Möglichkeit gibt, dies nur mit QML, ohne C++, zu tun. Ich bin ein C++ Qt-Entwickler, aber ich verwende QML nicht viel, also gibt es vielleicht eine Möglichkeit, die ich nicht kenne.

Nach meinem Verständnis wird QML hauptsächlich zur Beschreibung einer Benutzeroberfläche verwendet, für die nicht trivialer Backend-Code entweder in PyQt oder C++ implementiert wird. Darüber hinaus ist QML vollständig plattformübergreifend und das Abrufen einer Benutzer-ID ist keine plattformunabhängige Operation.

Wenn ich Sie wäre und mich dazu entschlossen hätte, kein C++ zu verwenden, würde ich diese Frage vielleicht aufPaketüberfluss. Möglicherweise gibt es dort jemanden mit mehr Fachwissen.

Antwort2

Dank anAmit Tomarfür diese Antwort:

Sie müssten den Benutzernamen in C++ abrufen und diese Daten dann von C++ in QML umwandeln.

QML- und C++-Objekte können über Signale, Slots und Eigenschaftsänderungen miteinander kommunizieren. Für ein C++-Objekt werden alle Daten, die dem Metaobjektsystem von Qt zur Verfügung gestellt werden – also Eigenschaften, Signale, Slots und Q_INVOKABLE-Methoden – für QML verfügbar. Auf der QML-Seite werden alle QML-Objektdaten automatisch dem Metaobjektsystem zur Verfügung gestellt und können von C++ aus abgerufen werden.

LesenHierwie man Daten zwischen QML und C++ austauscht.

verwandte Informationen