Condividi tramite


Funzione WlxActivateUserShell (winwlx.h)

[La funzione WlxActivateUserShell non è più disponibile per l'uso a partire da Windows Server 2008 e Windows Vista.]

Attiva il programma della shell utente.

La funzione WlxActivateUserShell deve essere implementata da una DLL GINA sostitutiva. Winlogon chiama questa funzione seguendo un accesso riuscito per richiedere all'GINA di attivare il programma shell dell'utente.

Nota Le DLL GINA vengono ignorate in Windows Vista.
 

Sintassi

BOOL WlxActivateUserShell(
  [in] PVOID pWlxContext,
  [in] PWSTR pszDesktopName,
  [in] PWSTR pszMprLogonScript,
  [in] PVOID pEnvironment
);

Parametri

[in] pWlxContext

Puntatore al contesto GINA associato a questa stazione finestra. Si tratta del valore di contesto restituito dall'GINA quando Winlogon chiama WlxInitialize per questa stazione.

[in] pszDesktopName

Puntatore a una stringa di caratteri wide con terminazione null che specifica il nome del desktop in cui verrà avviata la shell. Passare questa stringa alla funzione CreateProcess o CreateProcessAsUser tramite il membro lpDesktop della struttura STARTUPINFO.

[in] pszMprLogonScript

Puntatore a una stringa di caratteri wide con terminazione null che specifica eventuali nomi di script restituiti dalle DLL del provider di rete. Le DLL del provider di rete possono restituire script da eseguire durante l'accesso; tuttavia, l'GINA può ignorarle.

[in] pEnvironment

Specifica le variabili di ambiente iniziali per il processo. Winlogon crea una copia dell'ambiente e la passa alla GINA. L'GINA può modificare questo ambiente prima di usarlo per inizializzare la shell dell'utente. L'GINA deve chiamare la funzione VirtualFree per liberare la memoria allocata per pEnvironment.

Valore restituito

Se la funzione avvia correttamente un processo della shell, la funzione restituisce TRUE.

Se la funzione ha esito negativo, restituisce FALSE. Quando viene restituito FALSE, Winlogon annulla l'accesso nel processo.

Commenti

Prima di chiamare WlxActivateUserShell, Winlogon imposta lo stato desktop in modo che il desktop corrente sia il desktop Winlogon e imposta lo stato della workstation in modo che il desktop sia bloccato.

Attiva sempre il programma della shell utente in WlxActivateUserShell anziché WlxLoggedOutSAS. In questo modo Winlogon può aggiornarne lo stato, inclusa l'impostazione di workstation e protezioni desktop, prima che vengano eseguiti i processi utente connessi.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winwlx.h

Vedi anche

WlxInitialize

WlxLoggedOutSAS

WlxLogoff