Ein großes Problem für den Programmierer eines Bildschirmschoners ist es, daß viele Applikationen nichts davon wissen, was gerade vor Ihren Augen auf dem Bildschirm vorgeht. Dementsprechend geben sie Ihre Informationen weiterhin auf den Bildschirm aus, obwohl dort eigentlich jetzt der Bildschirmschoner das Sagen hätte. Damit eine Applikation sicher den Status des Bildschirmschoners feststellen und u.U. sogar beeinflussen kann, gibt es den sogenannten XSSI-Standard (XSSI steht für "eXtended ScreenSaver Interface"), der von Julian Reschke vorgeschlagen wurde.
Der Wert des XSSI-Cookies ist ein Zeiger auf die folgende Struktur:
typedef struct { LONG id; WORD version; WORD save_stat; WORD prg_stat; LONG vec_stat; } INFOXSSI;
id | Als id trägt jeder Bildschirmschoner seine
XBRA-Kennung ein.
| ||||||||||||||||||||||
version | In version ist die Versionsnummer des XSSI-Protokolls
eingetragen. 'Before Dawn' verwendet im Moment die Versionsnummer
$101.
| ||||||||||||||||||||||
save_stat | Über save_stat kann eine Applikation feststellen, ob
gerade geschont wird. Ein Wert von 0 bedeutet, daß nicht geschont
wird. Ein negativer Wert zeigt an, daß gerade geschont wird.
| ||||||||||||||||||||||
prg_stat | Mit prg_stat kann eine Applikation 'Before Dawn'
mitteilen, wie es sich verhalten soll. Dabei kann prg_stat die
folgenden Werte annehmen:
prg_stat = 0 normal schonen prg_stat = 1 niemals schonen. prg_stat = -1 sofort schonen | ||||||||||||||||||||||
vec_stat | vec_stat zeigt an, welche Systemvektoren überwacht
werden. Es handelt sich bei diesem Wert um ein Bitfeld. Die Belegung
ist folgendermaßen:
|