2017-09-13 15 views
0

イベントが発生したときに、Windows 10で開いているセッションをロックするアプリケーションを実装したいと考えています。私は多かれ少なかれ同じ質問hereを見て、答えは、プログラムでWindowsの画面をロックする方法がないと言われるようだ。しかし、私はいくつかのアプリケーションがWindowsの画面をロックしているのを見ました(例えば、Nymi Companion Device Application)。Windows 10をC#(UWP&SDK)でロックする

ロッカーを実装する方法は分かりますか?またはどのモジュールがタスクを達成できるか?

+1

あなたがしようとすると、キーのコンボを '送る勝利+ L ' –

+0

あなたはLockWorkStationを試しました(); – saeed

+0

の前にrundll32.exe user32.dllを実行することができます。LockWorkStation - 他にもありますか? – BugFinder

答えて

0

これは動作します:

using System.Runtime.InteropServices; 

[DllImport("user32.dll")] 
public static extern void LockWorkStation(); 
+0

私はこの機能を試しましたが、常にfalseを返し、Windowsの画面はロックされません。私はSDKとUWPでWindows 10を使用しています –

0

これはC#での完全なサンプルコード

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.Runtime.InteropServices; 



namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     [DllImport("user32.dll")] 
     public static extern bool LockWorkStation(); 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      LockWorkStation(); 
     } 
    } 
} 
+0

こんにちは、サイード、ありがとう。私はこれを試して、関数は常にfalseを返します。 –

+0

@TriVuKhacあなたは 'Process.Start(@" C:\ WINDOWS \ system32 \ rundll32.exe "、" user32.dll、LockWorkStation ");'を試してみましたか? –

+0

はい、しました。これはUWPでは動作しません。私たちはSecondaryAuthenticationFactorRegistration.IsDevicePresenceMonitoringSupported()関数とSecondaryAuthenticationFactorRegistration.RegisterDevicePresenceMonitoringAsync()関数を見ることができます。これはセッションを適切にロックするための出発点です。 –

関連する問題