以静默方式运行batch file,在远程桌面login时执行

在我们的办公室里,我们使用的是Linux瘦客户端机器,除了缺lessIE以外,他们工作得很好,这很痛苦,因为我们处理的公司太愚蠢了,无法更新他们的networking应用程序。

为了解决这个问题,我们在机房里有一台机器,用户通过远程桌面进入IE浏览器,这是通过运行一个打开IE的批处理脚本来实现的,当它closures时,这个设置很适合我们。

尽pipe我@echo off了@ @echo off ,cmd窗口没有显示任何内容,但是我真的很希望那个batch file能够静默地执行,所以cmd窗口根本不会出现。

这可能吗?

Ubuntuterminal服务器客户端可以select在login时启动一个文件/应用程序,有没有一个命令我可以用来默默运行这个批处理。

我试过这些:

 C:\my_batch.bat /NOCONSOLE C:\my_batch.bat /NOWINDOW C:\my_batch.bat /B C:\my_batch.bat /Q 

…没有成功,也许这是我的方式呢?

干杯:-)

编辑

远程桌面平台是Windows XP机器,没有什么特别的,但不是Windows Server安装程序。

也许试试

 start /b my_batch.bat 

/ b参数用于

 Start application without creating a new window. The application has ^C handling ignored. Unless the application enables ^C processing, ^Break is the only way to interrupt the application 

为什么不创build强制用户shell成为Internet Explorer的组策略? 这应该达到你想要的行为没有任何脚本。

用户configuration – >pipe理模板 – >系统 – >自定义用户界面

另一种select是创build一个VBScript,并通过Windows脚本主机而不是batch file来使用VBScript。 用wscript启动的脚本不会产生新的窗口。 你的batch file在做什么? 它应该很容易,简单地转换它的WSH。

如果您不介意在任何用户login时(即通过terminal服务或本地)执行batch file,则:

  1. 将.cmd文件保存到所有用户都具有只读权限的位置。 (例如%WINDIR%)
  2. 从命令提示符启动gpedit.msc
  3. 导航到用户>安全>脚本>login
  4. 添加一个新脚本,并将其指向您保存.cmd文件的任何位置

脚本应该静默运行而不显示命令提示符窗口。

如果您不希望它在本地login时运行,则可能在batch file中检测到这一点,并以无提示方式中止脚本。

如果像这样运行,你不能运行隐藏的批处理脚本。 但是有一点VBS是可能的。

只要执行VBS文件,它将运行隐藏的脚本

 Dim oShell Set oShell = WScript.CreateObject ("WScript.Shell") oShell.run "cmd /CC:\my_batch.bat",0,false Set oShell = Nothing 

看到这个MSDN文章: http : //msdn.microsoft.com/en-us/library/d5fk67ky%28VS.85%29.aspx

远程桌面应用程序实际上使用所述batch file作为备用shell,我不认为可以使用此方法传递参数。

所以我将不得不忍受我的控制台窗口。