Ich versuche, den Pfad zum Hintergrundbild auf dem aktiven Desktop zu ermitteln. Ich habe jedoch Probleme, dies zuverlässig zu bekommen.
Die folgenden Quellen weisen darauf hin ~/Library/Application Support/Dock/desktoppicture.db
ist eine SQLite-Datenbank
mit Informationen zum Hintergrund.
- http://grahamgilbert.com/blog/2013/10/28/setting-a-desktop-picture-in-mavericks/
- gist.github.com/gregneagle/6225747 (Kann dies jemand voranstellen?
http
? SE hindert mich daran, mehr als 2 Links zu posten, weil ich in diesem Forum ein schlechtes Ansehen habe.)
Diese Quellen legen jedoch einen neuen Hintergrund fest und versuchen es nicht um den Inhalt der SQLite-Datenbank für den aktiven Desktop zu lesen.
Ich habe den Inhalt dieser Datei auf meinem System gespeichert und hochgeladen es als Kernstück an https://gist.github.com/bamos/6c5fb63ec1d9b8dc9205 .
Diese Datei scheint Informationen über Displays zu enthalten,
und Lesen des letzten Wertes von data
scheint das aktive Hintergrundbild zu bekommen manchmal .
- Gibt es eine Möglichkeit, die ich nutzen kann?
desktoppicture.db
bekomme ich das Hintergrundbild jedes Mal auf den aktiven Desktop? - Gibt es eine andere Möglichkeit, programmgesteuert einen Pfad zum aktiven Hintergrundbild abzurufen?
Edit: forums.macrumors.com/showthread.php?t=1525299 (kann jemand http hinzufügen?) Ist eine andere
Quelle für diese Informationen mit AppleScript, aber aus irgendeinem Grund
Das folgende Snippet kehrt zurück Wave.jpg
wann Wave.jpg
ist nicht das
aktives Hintergrundbild.
tell application "Finder"
set theDesktopPic to desktop picture
set theName to displayed name of theDesktopPic
display dialog theName
end tell
Zur Verdeutlichung ist mein Hintergrundbild so eingestellt, dass es nach dem Zufallsprinzip durchläuft ein Verzeichnis.
Ich habe versucht, den folgenden Befehl auszuführen, wie in den Antworten vorgeschlagen.
tell application "System Events" to get properties of every desktop
Auf meinem System gibt dies jedoch Folgendes aus:
display name:Color LCD, change interval:1800.0, id:69731840, random order:true, picture rotation:1, pictures folder:/Users/bamos/Pictures/wallpaper/nature, picture:/Library/Desktop Pictures/Wave.jpg, translucent menu bar:missing value, class:desktop,
Das Hintergrundbild des aktiven Desktops ist nicht enthalten.
Ich habe das Zufallsbild-Radfahren und deaktiviert
osascript -e 'tell application "Finder" to set desktop picture to {"Macintosh HD:Library:Desktop Pictures:Beach.jpg"} as alias'
ändere meinen Hintergrund in das Hintergrundbild "stock beach" und
osascript -e 'tell application "System Events" to get properties of every desktop'
jetzt zeigt picture:/Library/Desktop Pictures/Beach.jpg
. Dies ist jedoch nicht hilfreich, da ich den Hintergrund erhalten möchte, wenn ich zufällig durch ein Verzeichnis fahre.
quelle