我有一个相当独特的问题,我想收集一些意见。
我负责创建某种可以执行以下操作的脚本:
脚本需要能够具有以下属性:
到目前为止,我已经走上了Powershell的道路,因为它似乎满足了大部分要求。但是,考虑到Powershell的安全性如何设置,我需要让脚本强制执行不受限制的脚本策略,或者我需要找到一种方法在任何可能使用它的计算机上创建自签名证书。
这是造成问题的最后一位,因为makecert.exe要求用户输入证书的密码/密钥(从而使非技术用户感到困惑)并且不保证在生产Windows Server 2008中存在环境(因此强制用户安装Windows SDK或Visual Studio)。
所以我想看看是否有其他语言可以满足上述要求,以确保我正在使用正确的工具。
注意:我不打算使用脚本语言本身来创建GUI,可以通过VB或C#或其他方式完成。该脚本只需要由winform或WPF调用。这些正在被使用,因为我最习惯使用Visual Studio而不是任何其他IDE。
答案 0 :(得分:1)
我认为你走在正确的轨道上,这应该照顾你最后的关注。
上的powershell帮助文件中的相关行您可以为本地计算机设置当前计算机的执行策略 用户,或特定会话。
特定会话的执行政策 仅存储在内存中,并在会话关闭时丢失。
您无需签署脚本即可使PowerShell脚本可移植。在调用powershell.exe时,可以使用-ExecutionPolicy参数设置powershell会话的执行策略。这不会影响或更改已在计算机上设置的执行策略。
例如,您的GUI可以使用命令行调用脚本 Install-Perfmon.ps1 :
powershell.exe -ExecutionPolicy Unrestricted -File Install-Permon.ps1
即使计算机已经设置了更严格的执行策略,这也可以工作。