Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Bildschirmschonerliste (https://www.delphipraxis.net/198805-bildschirmschonerliste.html)

Mattze 1. Dez 2018 11:41

Bildschirmschonerliste
 
Hallo,

bei (ich glaube) allen Windowsversionen wird zur Auswahl des Bildschirmschoners eine Liste der vorhandenen Varianten angezeigt. (Win10: Einstellungen-Personalisierung-Sperrbildschirm-Einstellungen für Bildschirmschoner)
Wie bekomme ich diese Liste in eine Combobox meines Programmes?
Ich konnte bisher nix finden!
(Es geht nicht darum, selber einen zu basteln - jedenfalls noch nicht. Ich möchte wirklich nur die Liste der vorhandenen Möglichkeiten!)

Gruß
Mattze

Delphi.Narium 1. Dez 2018 12:46

AW: Bildschirmschonerliste
 
Alles mit der Dateiendung scr suchen, Dateieigenschaften auslesen und in 'ner ComboBox anzeigen.

Mattze 1. Dez 2018 16:06

AW: Bildschirmschonerliste
 
Hallo,

soviel weiß ich und das ist auch im Netz zu finden.
Das schien aber nicht für die eingebauten (Mystify, 3D-Text, Schleifen usw.) zu funktionieren.
Nun habe ich nochmals gesucht und, siehe da, ich habe sie gefunden.
Der Fehler: Screensaver sind im Ordner %Windows%\System32.
Das stimmt zumindest bei einem 64Bit-Windows nicht!
Die gibt es auch im Ordner
%Windows%\SysWow64
und
%Windows%\WinSxS\amd64...
und
%Windows%\WinSxS\x86...
Und nun habe ich sogar einen in %Windows% selber gefunden.
Ob das alle sind? Ich könnte mir vorstellen, dass einige der Standardschoner in einer DLL stecken.

Ein anderes Problem ist der Name mit dem der in Windows angezeigt wird. Es ist nicht immer Dateiname ohne Typ.

Wenn ich aber ganz %Windows% durchsuchen muss, dauert das! Jedenfalls wesentlich länger als die Anzeige von Windows selber braucht.
Es müsste also auch noch anders, schneller, direkter gehen!?

Ich suche weiter...
Nun, wir werden sehen...
Und vielleicht hat ja noch einer von Euch eine Idee?

Gruß
Mattze

Schokohase 1. Dez 2018 16:42

AW: Bildschirmschonerliste
 
Ja es gibt diese Ordner
Code:
%SystemRoot%\WinSxs
%SystemRoot%\System32
%SystemRoot%\SysWOW64
ABER nimm nur den Ordner
Code:
%SystemRoot%\System32
die beiden anderen sind für 32-Bit Anwendungen (%SystemRoot%\SysWOW64) bzw. für Side-By-Side (%SystemRoot%\WinSxs) und gerade im Letzteren hat man seine Finger herauszuhalten.

In dem 32-bit Ordner finden sich zumeist die gleichen Bildschirmschoner (nur in 32-bit) wie im 64-bit Ordner.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf