Come sapere se “Nascondi automaticamente” della barra delle applicazioni di Windows è attivato?

StackOverflow https://stackoverflow.com/questions/990002

Domanda

Come faccio a sapere tramite un programma di Delphi se l'Explorer di Windows barra delle applicazioni è impostata su autohide?

È stato utile?

Soluzione

In Windows XP e versioni successive, è possibile chiamare SHAppBarMessage API con il messaggio ABM_GETSTATE.

La sintassi:

SHAppBarMessage(ABM_SETSTATE, pabd);

pabd è un puntatore ad APPBARDATA struct.
file di intestazione è: shellapi.h.

Se si desidera ottenere lo stato di barra delle applicazioni, utilizzare il messaggio ABM_GETSTATE. è possibile chiamare questa API in Delphi.

Altri suggerimenti

Ciò che è è che davvero voglia di scoprire? E 'perché si vuole conoscere l'area dello schermo che è utilizzabile?

Se è così, allora io credo che si possa utilizzare lo Screen.WorkAreaRect per determinare l'area disponibile sullo schermo, in cui sono esclusi tutti i bar (permanente) di utensili, ecc.

Usa Win32 API di shell (IsTBAutohide e altri)
Vedere Google Gruppi per le API non documentate.
Mai leggere registro (ANS fermare la rimozione di risposte giuste, è stupido ...)

U hanno a che fare con registro di Windows perché tali informazioni sono keept in là. Valore che indica "autoohide" è scritto (lettura) solo mentre l'accesso utente / logout ont con il suo account

chiave del Registro di sistema responsabile per la memorizzazione questa informazione si trova in HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ StuckRects2 L'unica cosa v'è Impostazioni ed è un valore esadecimale 9 ° per "autohide su" questo valore è 03 per "autohide off" è 02

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top