2013-05-13 54 views
1

我有一个相当独特的问题,我想收集一些输入。脚本收集服务器信息任务的适当语言?

我负责建立某种可以做下列事情的脚本:

  • 任何Windows服务器上运行2008 R2服务器
  • 建立和运行性能计数器
  • 这些日志计数器日志文件
  • 卷时,它得到太大

的脚本需要能够公顷日志文件五个以下属性:

  • 与WPF或的WinForms兼容(我需要创建一个图形用户界面,)
  • 可以通过任何基于Windows Server 2008 R2服务器
  • 是便携式的本地管理员运行(如它可以很容易地打包并放在拇指驱动器等上,只需很少(或不需要)安装程序开销)
  • 可以由用户运行,很少/没有技术专长(这可以回到需要有GUI)

所以远远超出了Powershell的道路,因为它似乎满足了大部分要求。但是,在设置Powershell安全性的过程中,我需要让脚本强制使用无限制的脚本策略,或者需要找出在任何可能使用它的计算机上创建自签名证书的方法。

这就是导致问题的最后一位,因为makecert.exe要求用户输入证书的密码/密钥(这样会混淆非技术用户),并且不能保证在生产Windows Server中存在2008环境(从而迫使用户安装Windows SDK或Visual Studio)。

所以我想看看是否有另一种语言可以满足上述要求,以确保我使用正确的工具进行工作。

注:我不打算使用脚本语言本身来创建GUI,可以通过VB或C#或其他方式来完成。该脚本只需要由winform或WPF调用。那些正在使用,因为我最习惯于使用Visual Studio而不是其他任何IDE。

+0

你想用PowerShell创建GUI?使用C#IMO更容易。 – Aryadev 2013-05-13 12:56:42

+0

@Aryadev我打算使用VB或C#来创建GUI并从那里调用​​脚本,脚本本身只需要能够从其他地方轻松地调用。所以我想这只是解释。我会编辑我的问题更加精确。 – 2013-05-13 13:06:54

+0

我会用C#创建它。处理安全问题更容易,并且不需要客户端运行相同的PowerShell版本。 – 2013-05-13 14:10:04

回答

1

我认为你是在正确的轨道上,这应该照顾你最后的关注。

我已经引述了about_Execution_Policies

从PowerShell帮助文件的相关行可以设置执行策略为本地计算机,当前 用户或特定会话。

特定会话 的执行策略仅存储在内存中,并在会话关闭时丢失。

您不需要签署脚本就可以使您的PowerShell脚本便携。在调用powershell.exe时,可以使用-ExecutionPolicy参数设置PowerShell会话的执行策略。这不会影响或更改已在计算机上设置的执行策略。

例如,你的GUI使用命令行可以调用脚本安装-Perfmon.ps1

powershell.exe -ExecutionPolicy Unrestricted -File Install-Permon.ps1 

这将工作,即使电脑已经设置了更严格的执行策略。

+0

优秀。非常感谢那些帮助,我只是给了一个镜头(虽然没有无限制地使用Bypass,所以没有任何警告的机会),并且它工作得很好。现在我正在创建GUI。 – 2013-05-13 18:38:15

相关问题