Después de tanto batallar ya encontramos el arreglo de este inconveniente que muchos usuarios de nuestra web presentan. Si tienes algún detalle que compartir no dudes en aportar tu conocimiento.
Solución:
Hay múltiples alternativas:
- Use el módulo PowerShell de Terminal Services. Solución fácil.
- Escribiendo un envoltorio de PowerShell que analice la salida de
qwinsta
a los objetos Solución fácil. Ver ejemplo a continuación - Utilizar el
Cassia.DLL
Envoltura .Net para acceder a las API nativas queqwinsta
corre detrás de la escena. Esta es la clase que utiliza el módulo TS. Más difícil, pero tendrá la ventaja de ser personalizado según sus necesidades. - Vuélvete loco y usa los Métodos Nativos que
Cassia.DLL
accede usando P/Invoke (wtsapi32.dll
,kernel32.dll
,winsta.dll
). Difícil y demasiado complicado.
Envoltorio de PowerShell para qwinsta
function Get-TSSessions
#Convert to objects
ConvertFrom-Csv
Get-TSSessions -ComputerName "localhost" | ft -AutoSize
SESSIONNAME USERNAME ID STATE TYPE DEVICE
----------- -------- -- ----- ---- ------
services 0 Disc
console Frode 1 Active
rdp-tcp 65537 Listen
#This is objects, so we can manipulate the results to get the info we want. Active sessions only:
Get-TSSessions -ComputerName "localhost" | ? $_.State -eq 'Active' | ft -AutoSize SessionName, UserName, ID
SESSIONNAME USERNAME ID
----------- -------- --
console Frode 1
Calificaciones y reseñas
Al final de todo puedes encontrar los comentarios de otros sys admins, tú además puedes mostrar el tuyo si dominas el tema.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)