Ste*_*owe 48
据称,
System.Windows.Forms.SystemInformation.TerminalServerSession
Run Code Online (Sandbox Code Playgroud)
对于远程桌面会话(或VNC会话)将是如此
但我会测试它确定;-)
小智 16
如果你不想为此添加对System.Windows.Forms.dll的引用(如上所述),那么你也可以通过PInvoke直接调用底层系统调用,如下所示:
int result = GetSystemMetrics(SystemMetric.SM_REMOTESESSION);
bool isRemoteSession = (result != 0);
Run Code Online (Sandbox Code Playgroud)
可以在PInvoke.net - SystemMetric中找到SystemMetric枚举(但您可以使用0x1000的值); 而PInvoke.net上的GetSystemMetrics签名- GetSystemMetrics.
我使用RDP和VNC进行了测试 - 与前者(管理员/控制台模式)一起使用,但未检测到后者.
http://www.appdeploy.com/messageboards/tm.asp?m=21420&mpage=1&key=厬
系统变量%sessionname%将返回Console(如果是本地)或RDP*(如果是远程).
isRDP = [System.Environment]
.GetEnvironmentVariable("SESSIONNAME").StartsWith("RDP-")
Run Code Online (Sandbox Code Playgroud)
对于Windows应用商店应用,您可以使用:
Windows.System.RemoteDesktop.InteractiveSession.IsRemote
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35421 次 |
| 最近记录: |