Per rilevare da programma o da riga di comando se siamo connessi in una sessione di desktop remoto o terminal server, basta leggere la variabile di ambiente SESSIONNAME creata da windows.
Environ("SESSIONNAME")
Conterrà "Console" se siamo in locale
Conterrà "RDP-Tcp#0" se siamo in una sessione remota (0 può essere qualsiasi numero, dipende dal numero delle connessioni attuali)
;-)
Visualizzazione post con etichetta Remote Desktop. Mostra tutti i post
Visualizzazione post con etichetta Remote Desktop. Mostra tutti i post
giovedì 17 settembre 2015
venerdì 27 settembre 2013
Cassia .NET Windows Terminal Services / Remote Desktop Services Library
Ottima libreria per sfruttare alcune funzioni del remote desktop.
https://code.google.com/p/cassia/
;-)
https://code.google.com/p/cassia/
Cassia supports the following operations on both local and remote terminal servers:
- Enumerating terminal sessions and reporting session information including connection state, user name, client name, client display details, client-reported IP address, and client build number (WTSEnumerateSessions, WTSQuerySessionInformation, and friends)
- Logging off a session (WTSLogoffSession)
- Disconnecting a session (WTSDisconnectSession)
- Displaying a message box in a session and getting a response from the user (WTSSendMessage)
- Enumerating all processes (WTSEnumerateProcesses)
- Killing a process (WTSTerminateProcess)
- Shutting down or rebooting the server (WTSShutdownSystem)
L'indirizzo ip del client connesso:
ITerminalServicesManager manager = new TerminalServicesManager();
foreach (ITerminalServicesSession session in manager.GetLocalServer().GetSessions())
{
IPEndPoint ipEndPoint = session.RemoteEndPoint as IPEndPoint;
if (ipEndPoint != null)
{
Console.WriteLine(ipEndPoint.Address);
}
}
;-)
Etichette:
Desktop Remoto,
Remote Desktop
Iscriviti a:
Post (Atom)