Windows Server 2003上的远程桌面会话

我在使用远程桌面时遇到了一些问题,这里有一些说明。

  1. 每次pipe理员(控制台)在W2K3 SP2服务器上login时,我都设置了一些自动运行的应用程序
  2. 我从XP SP3使用远程桌面,使用与pipe理员相同的login名
  3. 它使用相同的用户名创build一个新的会话,并且应用程序启动自动运行,使应用程序中出现重复

我只是希望我可以强制远程桌面客户端连接到只有一个会话(控制台会话),与组策略设置,成功执行一个会话,但每当我closures远程桌面(断开)控制台也断开连接(我不希望它的行为如此)。

我也尝试一些设置来限制连接,但它也不像我想要的那样行事。 简单的我只想使用1会话,但每次我们closures远程桌面会话仍然活着,很像当我们使用VNC解决scheme(RealVNC,UltraVNC,TinyVNC等)

任何解决scheme?

如果你不介意我问什么是应用程序? 你可以像Kevinbuild议的那样使用mstsc / console或者mstsc / admin,这取决于你的服务包级别直接连接到控制台。 另一种select是把它变成一项服务。 我不确定是否在控制台窗口中运行它,因为您希望能够看到一些输出,这会否定这一点 – 但是有几个应用程序会将任何应用程序打包为服务。 另一个select是使用另一个帐户远程桌面到该机器,然后接pipepipe理员会话。

你有没有尝试使用mstsc的/ console开关? 这应该强制它连接到控制台会话。

几件事情:

  1. 从来没有任何问题连接到控制台会话,断开连接,并通过使用mstsc / console重新连接到控制台会话。 事实上,我有单独的RDP快捷方式设置为连接到控制台会话和连接到正常的会话。

  2. 即使断开与控制台会话的连接,用户仍保持login状态,并且在该会话中运行的任何程序都将继续运行,那么断开连接有什么问题? 你说为什么你不想这样做呢?

您可以运行PowerShell脚本来查看进程是否已经运行,如果没有,运行它。

$myProcessName = "wordpad"

$myProgram = "C:\\Program Files (x86)\\Windows NT\\Accessories\\wordpad.exe"

if (get-process $myProcessName -ea SilentlyContinue) {} else {[diagnostics.process]::start($myProgram)}

使用程序的信息replace$ myProcessName和$ myProgram的正确值。 进程名称通常与文件名相同,没有.exe,但检查任务pipe理器是确定的。 将其保存到一个文件scriptName.PS1,然后在login时运行该文件。 这可以在开始菜单>启动文件夹,或者您喜欢的许多其他位置。 如果您还没有这样做,则需要启用运行的PowerShell脚本,否则将会出现错误。

一个注意事项 – 要查看服务器上的所有正在运行的进程,您需要具有您正在使用的用户帐户的pipe理员权限。

您是否尝试过更改terminal会话服务设置?

  1. 在命令行中运行[tscc.msc]
  2. [服务器设置]> [将每个用户限制为一个会话]>是

http://www.intelliadmin.com/index.php/2007/10/terminal-server-has-reached-maximum-connections-never-again/