2009-08-11 8 views
15

Je suis tombé sur cet exemple pour le verrouillage poste de travail Windows:poste de travail de Windows verrouillage par programmation en C#

using System.Runtime.InteropServices; 
... 
[DllImport("user32.dll", SetLastError = true)] 
static extern bool LockWorkStation(); 

... 
if (!LockWorkStation()) 
    throw new Win32Exception(Marshal.GetLastWin32Error()); // or any other thing 

Y at-il une alternative à ce pur réussi extrait? A savoir, sans P-Invoke.

Répondre

16

Non, il n'y en a pas. C'est le meilleur moyen d'accomplir cette action.

Même s'il était fourni dans la BCL, sa mise en œuvre serait presque certainement identique à votre échantillon. Ce n'est pas quelque chose que le CLR implémenterait nativement.

+0

+1 pour la clarification, merci. –

+0

@RonKlein: Hey je veux faire la même chose. i.e Verrouillage de Windows Desktop par programmation et affiche l'écran de connexion sans fermer la session de l'utilisateur actuel. Cela fait la même chose ou quelque chose de différent ??? Merci pour votre solution ci-dessus, il m'aide de plusieurs façons. Faites moi juste clair au-dessus de la question. –

+0

@Hemang Rami, je pense que ce que vous essayez de faire est exactement ce que je demandais: verrouiller le poste de travail tout en gardant la session en cours active. –

Questions connexes