Windows

列出所有目前的 RDP 會話

  • September 28, 2019

我們正在客戶端的伺服器上執行某個應用程序。該應用程序在控制台會話上執行,基本上管理一些批處理。每隔一段時間,我們就會發現應用程序沒有執行,顯然這只會發生在客戶抱怨應用程序的工作沒有完成之後。應用程序關閉的原因各不相同,從內部錯誤到故意關閉再到伺服器重啟。如果是後者,我可以在事件查看器中看到證據。在其他情況下,我正在尋找一種方法來發現在應用程序關閉時誰登錄了。

對我來說似乎合理的是通過批處理文件執行應用程序,一旦應用程序關閉,後面的批處理命令將列出目前登錄的使用者,其中一個可能負責關閉。問題是每個人都使用網路管理員憑據(!)登錄伺服器,並且只能通過使用者的機器名稱來區分不同的會話。

值得一提的是:

  1. 該應用程序執行經典的服務工作,但無法轉換為一個。
  2. 我嘗試了一些 Sysinternal 工具,但沒有一個列出我需要的資訊。
  3. 我寧願不使用事件查看器。它被淹沒了。日誌文件更好。

更新::所以也許

netstat -n -a | findstr 3389

就是你要找的。

**更新前:**我認為您正在尋找的是:

query session
query user

但是,至多,這些都是創可貼。你應該退後一步,在更深層次上解決這個問題。也許是看門狗服務或類似的東西。

您可以net session在 Windows 上使用該命令來找出誰已登錄(本地和遠端)。我目前沒有 windows 框,很抱歉我不能給你完整的命令,但net session help應該……幫助你嗎?:)

引用自:https://serverfault.com/questions/32866